PHPの質問です。

以下でPHPでMySQLに接続しています。

if($A != 0){
while ( $row = mysql_fetch_array( $res, MYSQL_ASSOC ) ) {
echo $row['ken_info'];
}
}

右中括弧 } が最後に2つ並んでいます。
最初の } はwhileに対応したもので、後の } がifの締めくくりです。

しかし困ったことにPHPが最初の } をifの締めくくりと判断してしまい、$Aが0の場合は余計な } が一つ残ってエラーになってしまいます。

これはどうすればいいでしょうか??

回答の条件
  • 1人2回まで
  • 登録:2007/03/20 22:14:38
  • 終了:2007/03/20 23:42:14

ベストアンサー

id:ctrl-v No.1

ctrl-v回答回数289ベストアンサー獲得回数152007/03/20 23:10:22

ポイント43pt

PHPが最初の}をifの締めくくりと判断することはありません。

前後に閉じ忘れの{がないかもう一度確認されて方が良いかと思います。

PHPエディター(http://phpspot.net/php/phpeditor.html)のようなソフトを使うと、対応する{}を太字で表示してくれるので、ミスを減らすことができます。

id:tokyosmash

確かにPHPが間違うなんてありえないですよね。

自分が間違っていたようです。

くだらない質問してすいませんでした。。


エディター使いやすいですね!

プログラム書く時はTeraPadしか使わなかったのですが、PHP勉強中なのでこのエディタも使っていこうと思います。

どうもありがとうございました。

2007/03/20 23:35:24

その他の回答(1件)

id:ctrl-v No.1

ctrl-v回答回数289ベストアンサー獲得回数152007/03/20 23:10:22ここでベストアンサー

ポイント43pt

PHPが最初の}をifの締めくくりと判断することはありません。

前後に閉じ忘れの{がないかもう一度確認されて方が良いかと思います。

PHPエディター(http://phpspot.net/php/phpeditor.html)のようなソフトを使うと、対応する{}を太字で表示してくれるので、ミスを減らすことができます。

id:tokyosmash

確かにPHPが間違うなんてありえないですよね。

自分が間違っていたようです。

くだらない質問してすいませんでした。。


エディター使いやすいですね!

プログラム書く時はTeraPadしか使わなかったのですが、PHP勉強中なのでこのエディタも使っていこうと思います。

どうもありがとうございました。

2007/03/20 23:35:24
id:yuduki1219 No.2

yuduki1219回答回数14ベストアンサー獲得回数12007/03/20 23:26:22

ポイント32pt

php側でそのような判断をすることはないので、

おそらく前後の文章に何かしらのミスがあると思われます。

前後の{}を使用しているif文などに閉じ忘れがないか、

あるいは各文末の;の付け忘れがないかなど確認してみるとよいかもしれません。

id:tokyosmash

数年前CSSを勉強していた時に、自分は間違っていないつもりなのにIEで表示させると何だか違う具合になってしまってたんです。

実際IEはバグがちょこちょこあるのですが、PHPもそうなのかなーと疑心難儀になってしまいました。

ご丁寧にありがとうございます!

2007/03/20 23:37:23
  • id:nandedarou
    質問のコードは、エラーの出たコードをコピーして張り付けたものですか?
  • id:tokyosmash
    いつもどうもです。
    実際のコードはもっと長いです。


    if($A != 0){
    echo 'function mapMove() {';
    while ( $row = mysql_fetch_array( $res, MYSQL_ASSOC ) ) {
    echo 'map.setCenter(new GLatLng('.$row['ken_ido'].','.$row['ken_keido'].'),parseInt('.$row['ken_zoom'].'));';
    }
    echo '}';
    }



    場所はちょっと説明しづらいのですが、
    HTMLのHEAD内のjavascript(GoogleMAP用)を記述しているところです。
    そこにMySQLのデータをPHPで持ってきているのです。

    もしかして簡略し過ぎて変になってしまってるかも。。
  • id:Mook
    文法チェックしてくれるエディタはケアレスミスを防いでくれるので、有用ですね。

    揚げ足取りで申し訳ないですが、
      疑心難儀⇒疑心暗鬼
    ですね。

    気になったもので・・・・。
  • id:tokyosmash
    恥の上塗りですね・・
    この言葉の使い方も合っているか不安だったので辞書で調べました。PHPに加えて日本語も精進します!

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません