• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:INSERTした時のデータベース等の表示がおかしい)

INSERTした時のデータベース等の表示がおかしい

このQ&Aのポイント
  • 商品名や値段が表示されない問題が発生しています。入力フォームからのデータ受け渡しやINSERT文に誤りがある可能性が考えられます。
  • 現在、phpmyadminを使用して、商品登録フォームに商品名と値段を入力していますが、登録後の表示が正しく行われません。
  • 質問者のコードを確認したところ、INSERT文でデータを追加しているが商品名と値段が正しく受け渡されていないようです。

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

  • ベストアンサー
  • php504
  • ベストアンサー率42% (926/2160)
回答No.1

>データべースやselect文で表示したIE の部分がわからないのですが IEでphpmyadminを使ってデータべースへselect文を実行したということでしょうか。 商品名が空で値段が0ということは他のカラム(フィールド)には値が入っているのでしょうか。 それでしたらINSERT時に商品名と値段が空だったと考えられます。 header("Location:shoppingformCompletion.php"); を削除して $query = "INSERT INTO shoppingtable (item, price) VALUES (\"$item\",\"$price\")"; echo $query; などで確認されたらどうでしょう

msnxl
質問者

お礼

ご回答ありがとうございました。なんとかクリアすることができました。

msnxl
質問者

補足

php504様のおっしゃる通りheader("Location:shoppingformCompletion.php");を消して確認したところ 「INSERT INTO shoppingtable (item, price) VALUES ("","")string(54) "INSERT INTO shoppingtable (item, price) VALUES ("","")"」 となり、 空になっていました。 また、他のカラム(フィールド)には値が入っています。 データべースやselect文で表示したIEは IEでphpmyadminを使ってデータべースへselect文を実行したということです。 入力フォームのスクリプトは下のものですが、やはり商品名や値段が確認スクリプトの方に受け渡せていないようです。 初歩的なことかもしれませんが、入力フォームから確認のスクリプト(追加登録する画面)まで商品名と値段の受け渡す方法をお教え願えないでしょうか? $submit = $_POST["submit"]; $item = $_POST["item"]; $price = $_POST["price"]; //ショッピング登録フォーム echo ' <form method="post" action="shoppingform.php" > <center><br>商品名:<input type="text" size="30" maxlength="60" name="item"></br></center> <center><br>値段:<input type="text" size="30" maxlength="60" name="price"></br></center> <center><input type="submit" name="submit" value="登録"></center> </form> '; if($submit == "登録"){ $item = $_POST["item"]; $price = $_POST["price"]; header("Location:shoppingformConfirmation.php"); if($_POST["item"] == "" || $_POST["price"] == ""){ header("Location:shoppingformConfirmationfalse.php"); } } if($contact=mysql_connect("host","admin","root")){ echo "<strong>登録済み商品。<br></strong>"; } $query = 'SET NAMES sjis'; mysql_query($query ); mysql_select_db("test", $contact); $query ="SELECT * FROM shoppingtable"; $result = mysql_query($query) or die('Query failed: ' . mysql_error()); while($line = mysql_fetch_array($result, MYSQL_ASSOC)){ foreach( $line as $key=>$value ){ echo " $value<br>"; } }

関連するQ&A