- ベストアンサー
phpエラーについて
おはようございます。 PHPにて掲示板を作成しています。 (全文は文字数制限にて掲載することができなかったため、主要な部分を掲載しております) 一通り作成した後、 ブラウザから参照したところ、 Parse error: parse error, unexpected ';', expecting '{' in /***/***.php on line 44 が出力されました。 line 44行目は「function convstr ( $str );」の行を指します。 この場合、問題となっているのは、 44行目から 57行目の間と考えてよろしいのでしょうか? もし、違っていたとするならば、どこまで追っていけばよろしいのでしょうか? また、errorに対するデバッグ手法がありましたら、 具体的な手法を教えて頂けないでしょうか? 例:printfを*行目にprint()の構文で設置する。 どうぞよろしくお願いします。 42:<?php 43: //タグ無効化等の処理をする関数 44: function convstr ( $str ); 45: { 46: //タグを無効化する 47: $str = htmlspecialchars ( $str ); 48: 49: //「'」「"」を全角に置換する 50: $str = stripslashes ( $str ); 51: $str = ereg_replace ( "'", "’", $str ); 52: $str = ereg_replace ( """, "”", $str ); 53: 54: //文字列内の改行を<br>に変換する 55: $str = ereg_replace ("\r\n|\r|\n", "<br>", $str); 56: return $str; 57: } 58: 59: //DBに接続する 60: $conn = mysql_connect ( "localhost", "root", "mysql" ); 61: if ( $conn == false ) 62: { 63: print ( "DB接続エラーです<br>\n" );
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
44行目が間違っていることを意味します。 関数の始まりは、 function convstr ( $str ) { のように、;は不要です。 英語のエラーメッセージは、{があるべきところに;がある、ということを言っています。
その他の回答 (4)
- php504
- ベストアンサー率42% (926/2160)
Parse errorというのは構文解析時点のエラーです。Syntax errorともいいます。 これは"()"や"{}"の対応があっていなかったり、引用符を閉じ忘れたり、文末の";"を付け忘れたりといった場合に起こります。表示されるエラーの行は矛盾が発覚した時点の行で実際のエラーはその行以前にあります(構文解析はその先の行まではまだ実行されてないので)。 Parse errorを減らしたり発生時にエラーの発見を手助けするためには構文解析機能のついたエディタを使うと良いです。対応する括弧を検索表示したり文字列部分の色を変えて表示してくれたりしてミスが減ります。 Parse errorはソースを見ないとわからないし初歩的なエラーですので自分でなくすように頑張ってください。 Parse errorのあとにも実行時にさまざまなエラーが待っていますが簡単な英語を読むだけで解決できることが多いので内容をよく確認してみましょう。
- php504
- ベストアンサー率42% (926/2160)
Parse errorというのは構文解析時点のエラーです。Syntax errorともいいます。 これは"()"や"{}"の対応があっていなかったり、引用符を閉じ忘れたり、文末の";"を付け忘れたりといった場合に起こります。表示されるエラーの行は矛盾が発覚した時点の行で実際のエラーはその行以前にあります(構文解析はその先の行まではまだ実行されてないので)。 Parse errorを減らしたり発生時にエラーの発見を手助けするためには構文解析機能のついたエディタを使うと良いです。対応する括弧を検索表示したり文字列部分の色を変えて表示してくれたりしてミスが減ります。 Parse errorはソースを見ないとわからないし初歩的なエラーですので自分でなくすように頑張ってください。 Parse errorのあとにも実行時にさまざまなエラーが待っていますが簡単な英語を読むだけで解決できることが多いので内容をよく確認してみましょう。
- php504
- ベストアンサー率42% (926/2160)
Parse errorというのは構文解析時点のエラーです。Syntax errorともいいます。 これは"()"や"{}"の対応があっていなかったり、引用符を閉じ忘れたり、文末の";"を付け忘れたりといった場合に起こります。表示されるエラーの行は矛盾が発覚した時点の行で実際のエラーはその行以前にあります(構文解析はその先の行まではまだ実行されてないので)。 Parse errorを減らしたり発生時にエラーの発見を手助けするためには構文解析機能のついたエディタを使うと良いです。対応する括弧を検索表示したり文字列部分の色を変えて表示してくれたりしてミスが減ります。 Parse errorはソースを見ないとわからないし初歩的なエラーですので自分でなくすように頑張ってください。 Parse errorのあとにも実行時にさまざまなエラーが待っていますが簡単な英語を読むだけで解決できることが多いので内容をよく確認してみましょう。
- php504
- ベストアンサー率42% (926/2160)
Parse errorというのは構文解析時点のエラーです。Syntax errorともいいます。 これは"()"や"{}"の対応があっていなかったり、引用符を閉じ忘れたり、文末の";"を付け忘れたりといった場合に起こります。表示されるエラーの行は矛盾が発覚した時点の行で実際のエラーはその行以前にあります(構文解析はその先の行まではまだ実行されてないので)。 Parse errorを減らしたり発生時にエラーの発見を手助けするためには構文解析機能のついたエディタを使うと良いです。対応する括弧を検索表示したり文字列部分の色を変えて表示してくれたりしてミスが減ります。 Parse errorはソースを見ないとわからないし初歩的なエラーですので自分でなくすように頑張ってください。 Parse errorのあとにも実行時にさまざまなエラーが待っていますが簡単な英語を読むだけで解決できることが多いので内容をよく確認してみましょう。