私はPHPコーディングのレベルがあまり高くありません。データベース内の4つの異なるテーブルにデータを入力するために使用される4つのフォームを持つphpインターフェイス(コード:insert.php)があり、フォームへのデータ入力は互いに独立しています。しかし、フォームにデータを入力すると、インターフェイス内の別のフォームに関連する 2 つの変数を指す「未定義のインデックス エラー」が発生します。また、データベースのテーブルにデータが入力されません。すべてのフォームがこのエラーを引き起こすわけではありません。
これは「insert.php」のコードで、データを挿入する必要があるフォームです。
<form method="post" action="input.php">
<tr>
<td>ID</td>
<td><input type="text" name="cat_id" size="40">
</td>
</tr>
<tr>
<td>Description</td>
<td>
<textarea NAME="desc" COLS=31 ROWS=6></textarea>
</td>
</tr>
<tr>
<td>
</td>
<td align="right">
<input type="submit" name="submit" value="Done">
</td>
</tr>
これは、関連するエラー変数である「insert.php」のコードです。
<form method="post" action="input.php">
<tr>
<td>ItemID</td>
<td><input type="text" name="item_id" size="40">
</td>
</tr>
<tr>
<td>EPF</td>
<td><input type="text" name="epf" size="40">
</td>
</tr>
<tr>
<td>Quantity</td>
<td><input type="text" name="quan" size="40">
</td>
</tr>
<tr>
<td>Date</td>
<td><input type="date" name="date" size="40">
</td>
</tr>
<tr>
<td>
</td>
<td align="right">
<input type="submit" name="submit" value="Done">
</td>
</tr>
これは「input.php」のコードです。
<?php
$cat_id=$_POST['cat_id'];
$cat_descr=$_POST['desc'];
$query_cat = "INSERT INTO 'category' ( id, description)
VALUES ('$cat_id','$cat_descr')" or die (mysql_error());
$result_cat = mysql_query($query_cat);
?>
<?php
$item_id=$_POST['item_id'];
$epf2=$_POST['epf'];
$quan=$_POST['quan'];
$date=$_POST['date'];
$query_itemEmp = "INSERT INTO 'emp_div_item' ( epf, item ,quantity, date)
VALUES ('$epf2','$item_id','$quan','$date')" or die (mysql_error());
$result_itemEmp = mysql_query($query_itemEmp);
?>
<?php
if( $result_emp || $result_cat || $result_item || $result_itemEmp){
echo("<br>Input data is succeed");
} else{
echo("<br>Input data is fail");
}
?>
エラーが指摘する変数は、$quan と $date です。$result_item と $result_emp は、正常に機能する他のフォームから取得したクエリ結果です。ユーザーが一度にすべてのフォームにデータを入力する必要はないことに注意してください。一度に入力するフォームの数に関係なく選択できます。
この問題を解決するのを手伝ってください。事前に感謝します。