質問: array ( 'total_page' => ceil($datanum / $page_disp_kensu), 'text' => ($strHTML) ); echo json_encode($output); ?> ``` 1$(document).ready(function() {$('.demo').tbodyScroll({thead_height: '30px',tbody_height: '100px',head_bgcolor: 'transparent',foot_bgcolor: 'transparent'}); });でsyntax error, unexpected '(', expecting T_VARIABLE or '$'というエラーが出ます。 2一番下の
回答: 以前の質問からエラー解消のために奮闘されているものと思われますが、 その時に指摘したコメン部分そのままと思います。 > > mts10806 > > 2018/03/07 16:38 編集 > > 切れているのは切れているのは > > $strHTML = ' で始まっているけど、閉じの ' がないところ。 > > それでも上の部分ではsyntax error出てると思いますよ。 > > ' で変数を代入しているのに中に 'があります。中で使いたい場合はエスケープされた方が良いでしょう。 > > $hogehoge = 'aaa\'bbb'; > > おそらく同じ観点でエラーを解消できるはずです。 > > 変数に代入する際に ' で囲っているか、 " で囲っているか。 > > 囲っているクォートを中のHTMLやjavascriptなどの文字列で使っていないか。 > > 特に上のほうはシングルクォートで囲いながら中でjavascriptの記述でシングルクォートを使っていますね。 > > $strHTML = ' > > ~~ > > $('.demo').tbodyScroll({ ←ここ。 > > あとは、終了部分(;の前)は同じクォートになっているかあたりを確認してみてください。 > > > 変数代入時にシングルクォーテーション''で囲っているのに、中でシングルクォートを利用しているからです。 中で「文字列」としてシングルクォーテーションを利用したければエスケープする必要があります。 ``` $strHTML = 'aaa\'bbb'; echo $strHTML; // aaa\bbb ``` 沢山あるので全てにシングルクォーテーションを手動でつけようと思うと 漏れが発生して中々進まなくなってしまうので、エスケープを入れるのではなく、ヒアドキュメントの利用もご検討ください。 * PHP ヒアドキュメントの使いかた ※その場合、中でPHPの変数を使いたい場合は{$hogehoge}とする必要があるのでご注意ください。 以前もすすめましたが、コードのエラーチェックも自動で行ってくれるテキストエディタを使用するように強くすすめます。 例えばEclipse上で確認すれば、画面を見る前に分かります。 !イメージ説明 修正コード 2018/03/12 13:35 ======================= 最新ソースの問題がある箇所をざっくり修正しました。 これでエラーはなくなりそうですが、想定通りに出るかどうかはまた別問題です。 自身で調整してください。 修正した箇所: * nowdocに統一するため、変数に別で入れていたところを全て削除。nowdoc内に格納。 * javascript部分にあったダブルクォーテーション(")に対するエスケープを全て削除 →nowdocでは必要ないため * タグの開始がないので追加 *