みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

PHP初心者です。

PHP・Mysql超初心者です。掲示板を自分で考えて作っているのですが、
わからないところがあり困っています。

管理登録画面で管理noと品名を入力し、登録をクリックするとMysqlに
データを保存します。

管理表の画面で、品名(上記のMysqlから品名をセレクトボックスで
表示)と注文数を入力し、Mysqlに保存したいのですが、その命令の
所でエラーが出ます。

書き方やセキュリティ等は無視して下さい。

どなたかご教授下さい。

//管理登録画面
*kanri.html

<html>

<meta http-equiv="content-type" content="text/html; charset=euc-jp">
<body>

<form method="post" action="touroku.php">
<h3>管理登録</h3><br>
NO:<input type="text" name="no"><br><br>
品名:<input type="text" name="hinmei"><br><br>
<input type="submit" value="登録">

</form>
</body>

</html>

*touroku.php

<html>

<meta http-equiv="content-type" content="text/html; charset=euc-jp">
<body>

<?

$no=$_POST["no"];
$hinmei=$_POST["hinmei"];

$db=mysql_connect("***","***","***") or die("接続失敗");
print("デ―タベースサーバーに接続できました<br>");

mysql_select_db("***")or die("データベースが見つかりません".mysql_error());
print("データベースに接続しました<br>");

$a="insert into kanri_list(no,hinmei)values('$no','$hinmei');";

mysql_query($a)or die("命令が違います");

$a="select * from kanri_list;";
$kekka=mysql_query($a)or die("命令が違います");

mysql_close($db);
?>

登録しました!<br><br>

</body>

</html>

//管理表
*kanri.php

<html>

<meta http-equiv="content-type" content="text/html; charset=euc-jp">
<body>

<form method="post" action="kanri1_1.php">

<h2>管理表</h2><br>
品名:<select name="kanri">
<?
$kanri=$_POST["kanri"];

$db=mysql_connect("***","***","***") or die("接続失敗");

mysql_select_db("***")or die("データベースが見つかりません".mysql_error());

$a="select * from kanri_list;";
$kekka=mysql_query($a)or die("命令が違います");

while($b=mysql_fetch_array($kekka)){


print("<option value='".$b[1]."'>".$b[1]."</option>\n");


}

mysql_close($db);
?>
</select>
<br>
注文数:<input type="text" name="kazu"><br>

<input type="submit" value="登録">

</form>
</body>

</html>

上記の登録ボタンを押すと「命令が違います」とエラーが出ます。

*kanri1_1.php

<html>

<meta http-equiv="content-type" content="text/html; charset=euc-jp">
<body>

<?

$kanri=$_POST["kanri"];
$kazu=$_POST["kazu"];


$db=mysql_connect("***","***","***") or die("接続失敗");

mysql_select_db("***")or die("データベースが見つかりません".mysql_error());

$a="insert into kanri1_list(kanri,kazu)values('$kanri',$kazu');";

mysql_query($a)or die("命令が違います");

$a="select * from kanri1_list;";
$kekka=mysql_query($a)or die("命令が違います");

mysql_close($db);
?>

登録しました!<br>

</body>

</html>

投稿日時 - 2012-03-15 07:54:45

QNo.7363021

困ってます

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

>掲示板を自分で考えて作っているのですが、

掲示板の話とはちょっと違うような・・・


>上記の登録ボタンを押すと「命令が違います」とエラーが出ます。

ということはkanri1_1.phpでのエラーですよね。

>$a="insert into kanri1_list(kanri,kazu)values('$kanri',$kazu');";

$kazuの右の単引用符は何でしょうか?

あと、デバッグ中はor dieの中でmysql_error()も表示させるといいんじゃないでしょうかね。


なお、kanri1_listが「品名と数量」というのが不思議です。普通は品番(管理no)と数量にして品名はkanri_listで引っ張ってきます(違う管理noで同じ品名があったらどっちの商品かわからなくなりますよね)。これをSQL文で簡単に書けるのがデータベースを使うメリットですし。

投稿日時 - 2012-03-15 09:26:49

お礼

ご返答有難う御座います。
>掲示板を自分で考えて作っているのですが、
たしかに掲示板ではなかったです。

初心者の質問に答えてもらい本当に有難う御座います。

投稿日時 - 2012-03-17 18:01:02

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問