• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:phpでmysqlを検索、計算)

PHPでmysqlを検索、計算

このQ&Aのポイント
  • PHPでmysql内のデータを条件で絞り込み、一致するものの平均と個数を表示したいが、エラーが表示され結果を表示できない。
  • 現在のコードには記述エラーがあり、検索方法の文法が間違っている可能性がある。
  • print関数の記述も見よう見まねで行っているため、間違いがあるかもしれない。

質問者が選んだベストアンサー

  • ベストアンサー
  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.1

>30行目「$sql1 = >select avg(score) ~ ~ ~」のあたりに記述エラーがあると表示されるので、 >おそらく検索方法の文法が間違っているのですが、 SQLの記述ではなく、単純にPHPの記述エラーです。 $sql1 には、「ダブルクォートで括ったリテラルの文字列」か「文字列が格納された変数」以外の物を代入する事はできません。 $sql1 = select avg(score)... はリテラルでも無いし、変数でも無いのでエラーになります。 正しくはこんな感じになると思います。 ↓ $sql1 = "select avg(score) from seiseki where name = '$Name' and day like '$Day*'";

その他の回答 (2)

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.3

>問題点は解決したのですが、やはり > print "<table border=1 cellpadding=0 cellspacing=0>\n"; >以降が間違っているらしく、そこで再びエラーが出てきてしまいます 試す環境がないので確認できませんが、とりあえずすぐにわかるのは > print "<td align=right>{$sql2}回</td>;" ここは、$res1、$res2、$res3 をセットでしょう。 $sql1、$sql2、$sql3 はSQL文が入っているだけです。

KITA0620
質問者

お礼

すみません、そこは質問時の記述ミスで、実際は$sql1といったようになっておりました

KITA0620
質問者

補足

単純な全角、半角スペースの入力ミスだったようです ご迷惑をおかけして、もうしわけありません ただ、それでも結果が「合計 Resource id #4回」 のような表示になってしまい、正しい結果が表示されません データベースを見る限り、正しい結果表示は 「合計 1回」のはずなのですが・・・・

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.2

#1 です。追記。 $sql2、$sql3 も同様ですよ。

KITA0620
質問者

お礼

ご指摘の通り、”が抜けており、また’と表記すべきところが”となっておりました ありがとうございます 問題点は解決したのですが、やはり  print "<table border=1 cellpadding=0 cellspacing=0>\n"; 以降が間違っているらしく、そこで再びエラーが出てきてしまいます 何かお気付きになられた点などはないでしょうか?

関連するQ&A

専門家に質問してみよう