私はシステム上で作業しており、レコードが存在するかどうかを確認したい。レコードが存在する場合、データは記録されず、代わりにフォームに戻ります。データが存在しない場合は、DBへのデータの記録に進みます。DB上のレコードを挿入する際の未定義のインデックス
HTMLフォーム:
<form name="studentform" onSubmit="return validate_form ();" action="queries/insert.php" method="post">
Student Number: <input type="text" name="studentnumber"/>
College:
<select name="college" id=a></select>
Course:
<select name="course" id=b></select>
<input type="radio" name="status" value="regular" />Regular
<input type="radio" name="status" value="irregular" />Irregular
<br><br>
<hr>
<br>
Name:
<input type="text" name="lname">
<input type="text" name="fname">
<input type="text" name="mname">
Address:
<input type="text" name="address" />
<br><br>
Gender:
<select name="gender">
<option value="">---</option>
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
<input type="submit" value="Submit">
</form>
PHP形式:
$query = ("SELECT studentnumber FROM students where studentnumber = '$_POST[studentnumber]'");
$result=mysql_query($query);
if($result)
{
if(mysql_num_rows($result) >= 1)
{
echo "<script type='text/javascript'>alert('User already exist'); location.href = '../admin_home.php';</script>";
}
}
else{
$sql="INSERT INTO students (studentnumber, college, course, status, lname, fname, mname, address, gender)
VALUES
('$_POST[studentnumber]','$_POST[college]','$_POST[course]','$_POST[status]','$_POST[lname]','$_POST[fname]','$_POST[mname]','$_POST[address]','$_POST[gender]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "<script type='text/javascript'>alert('Record Successfully Added'); location.href = '../admin_home.php';</script>";
}
私はなぜ知らないが、私は常に未定義のインデックスエラーが発生します。たぶん私はどこかで何か間違ったことをしたでしょう。ありがとう!!
最初にまず "SQLインジェクション"を読んでください - あなたのコードは安全ではありません。 –
エラーの行番号は役に立ちます – xbonez
完全なエラーを書く –