• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:同じコードを使っているのにエラーはなぜ?)

同じコードを使っているのにエラーはなぜ?

このQ&Aのポイント
  • 先日、似たような質問をいたしました。エラーが出る理由を教えてください。
  • コード内の3行目でエラーが出ています。該当のコードの意味とエラーの原因を教えてください。
  • 参考文献の書籍のコードを書いていますが、エラーが出ます。どうすればエラーをなくすことができますか?

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

  • ベストアンサー
  • agunuz
  • ベストアンサー率65% (288/438)
回答No.3

何度同じミスをすればいいのか・・・ <?php require('dbconnect.php); $id = isset($_GET['id']) ? intval($_GET['id']) : 1; 3行目じゃなくて、1行前の require('dbconnect.php); 『いつものように』引用符が閉じていない。 正直、プログラミングには向いていないと思う。諦めるなら早い方がいい。

dradra33
質問者

お礼

agunuzさま。 ご回答とご指摘ありがとうございます。 require('dbconnect.php); 引用符がありませんでしたね…。 まことに恐れ入ります。 他の方に質問する前にeclipseでの使用などで、 凡ミスに気付く習慣を身につけるようにします。

dradra33
質問者

補足

なお、引用符を付けたうえで、 require('dbconnect.php'); $id = isset($_GET['id']) ? intval($_GET['id']) : 1; としたら、意図通りの画面が表示されました。 ありがとうございます。

その他の回答 (2)

  • agunuz
  • ベストアンサー率65% (288/438)
回答No.2

全くの蛇足ですが $page = isset($_GET['page']) ? intval($_GET['page']) : 1; としているのであれば、 if ($page == '') { $page = 1; } は不要ですよね。必ずなんらかの整数値がセットされますし、その次にmaxもあるのですから。極端な話、maxまで含めて $page = isset($_GET['page']) ? max(intval($_GET['page']),1) : 1; でもいいと思います。 閑話休題 >Parse error: syntax error, unexpected 'id' (T_STRING) in >C:\xampp\htdocs\shop\update.php on line 3 このエラーメッセージ(と行番号)は間違いありませんか?3行目はコメントアウトだし id というリテラルが見当たりません(気になるとすればrequireしている dbconnect.php がどうなっているのかくらいでしょうか・・・)。 提示されているソースが「C:\xampp\htdocs\shop\update.php」ということで間違いありませんか?どう考えてもupdate.phpというスクリプト名の内容にはなっていないように思えます(updateする部分がどこにもない)。

dradra33
質問者

お礼

agunuzさま いつもご回答・ご指摘ありがとうございます >このエラーメッセージ(と行番号)は間違いありませんか? あげるべきupdate.phpのソースコードを間違えておりました。 正しくは、以下のとおりです。 (コメントアウトは参考文献のコードです) update.php <?php require('dbconnect.php); $id = isset($_GET['id']) ? intval($_GET['id']) : 1; //$id = $_REQUEST['id']; $sql = sprintf("SELECT * FROM my_items WHERE id=%d", mysql_real_escape_string($id) ); $recordSet = mysql_query($sql); $data = my_sql_fetc_assoc($recordSet); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <link rel="stylesheet" type="text/css" href="style.css" /> <title>商品情報変更</title> </head> <body> <div id="wrap"> <div id="head"> <h1>商品情報変更</h1> </div> <div id="content"> <p>変更する内容を記入してください。</p> <form id="frmUpdate" name="frmUpdate" method="post" action="up_date.php"> <dl> <dt> <label for="maker_id">メーカーID</label> </dt> <dd> <input name="maker_id" type="text" id="maker_id" size="10" maxlength="10" value="<?php print<htmlspecialchars($data['maker_id'], ENT_QUOTES)); ?>" /> </dd> <dt> <label for="item_name">商品名</label> </dt> <dd> <input name="item_name" type="text" id="item_name" size="35" maxlength="255" value="<?php print<htmlspecialchars($data['item_name'], ENT_QUOTES)); ?>" /> </dd> <dt> <label for="price">価格</label> </dt> <dd> <input name="price" type="text" id="price" size="10" maxlength="10" value="<?php print<htmlspecialchars($data['price'], ENT_QUOTES)); ?>" /> 円</dd> <dt> <label for="keyword">キーワード</label> </dt> <dd> <input name="keyword" type="text" id="keyword" size="50" maxlength="255" value="<?php print<htmlspecialchars($data['keyword'], ENT_QUOTES)); ?>" /> </dd> <input type="submit" value="変更する" /> <input type="hidden" name="id" value="<?php print(htmlspecialchars($data['id'], ENT_QUOTE)); ?>" /> </form> </div> <div id="foot"> <p><img src="images/txt_copyright.png" width="136" height="15" alt="(C) H2O Space. MYCOM" /></p> </div> </div> </body> </html>

dradra33
質問者

補足

補足です。 〉 if ($page == '') { $page = 1; } 〉は不要ですよね。必ずなんらかの整数値がセットされますし、その次にmaxもあるのですから。極端な話、maxまで含めて ご指摘の通りです。 この箇所を削除しても全く問題はありませんでした。 大変参考になりました。ありがとうございます。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

エラーメッセージは?

dradra33
質問者

お礼

yambejpさま ご回答&ご指摘ありがとうございます。 エラーメッセージは次のとおりです↓ Parse error: syntax error, unexpected 'id' (T_STRING) in C:\xampp\htdocs\shop\update.php on line 3

関連するQ&A