错误代码,我想从数据库中添加员工与属性ID和empName记录表 '池'如何捕捉在PHP
theform.html
<FORM NAME ='form2' METHOD ='POST' ACTION ='result.php' enctype="multipart/form-data">
<B>Board Write</B> <BR>
<INPUT TYPE = Text Name = empID value = 'write ID here'>
<INPUT TYPE = Text Name = empName VALUE = 'write name here'><P>
<INPUT TYPE = 'Submit' Name = Submit2 VALUE = 'Post'>
</FORM>
result.php
<?PHP
$ID = $_POST['empID'];
$NAME = "'" . $_POST['empName'] . "'";
$server = "127.0.0.1"; //connect to server
$user_name = "root";
$password = "";
$database = "employees";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
if($db_found){// there is a database
$tableSQL = "INSERT INTO pool(ID, empName) VALUES " . "(" . $ID . "," . $NAME . ")";
$result = mysql_query($tableSQL);
if($result){
print "success!";
}
else{
print "fail!";
}
}
mysql_close($db_handle); //close the connection;
?>
在数据库中,ID是唯一的,也是INT数据类型,我想捕获用户输入数据库中已存在的ID值的错误代码。我们如何做到这一点?
首先,您应该防止发生任何错误,例如:通过[保护您的脚本免受SQL注入](http://stackoverflow.com/questions/60174/best-way-to-stop-sql-injection-in-php)。然后你应该[查看mysql函数的手册](http://www.php.net/manual/en/function.mysql-errno.php)。 – hakre
什么是'$ id'?为什么用户指定它? – zerkms
您可以使用['mysql_error'](http://www.php.net/manual/en/function.mysql-error.php)检索错误消息,以避免出现'$ result === false'的情况。请注意,您的数据库代码非常不安全并且允许SQL注入。 –