Php 查看MySql中的匹配项
我有一个表单,它有一个文本框,带有一个名为ref的属性。一旦提交,它会更新数据库中我的字段的名称。我有这个代码工作正常,但我现在需要的是它检查输入文本框的数据是否存在于数据库中,如果存在,那么它应该通知用户选择另一个引用。以下是我的php端代码:Php 查看MySql中的匹配项,php,mysql,Php,Mysql,我有一个表单,它有一个文本框,带有一个名为ref的属性。一旦提交,它会更新数据库中我的字段的名称。我有这个代码工作正常,但我现在需要的是它检查输入文本框的数据是否存在于数据库中,如果存在,那么它应该通知用户选择另一个引用。以下是我的php端代码: $ref = mysql_real_escape_string($_REQUEST['ref']); $id = $_GET['public']; $con = mysql_connect("localhost", "*****", "******"
$ref = mysql_real_escape_string($_REQUEST['ref']);
$id = $_GET['public'];
$con = mysql_connect("localhost", "*****", "******");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db('*****', $con);
$sql = "UPDATE public SET ref = '$ref' WHERE public_id = '$id'";
if (!mysql_query($sql, $con)) {
die('Error: ' . mysql_error());
} else {
echo '<hr><h2>Reference Number Has Been Assigned Successfully</h2><hr>';
}
$ref=mysql\u real\u escape\u字符串($\u请求['ref']);
$id=$_GET['public'];
$con=mysql_connect(“localhost”,“****”,“*******”);
如果(!$con){
die('无法连接:'.mysql_error());
}
mysql_select_db('*****',$con);
$sql=“UPDATE public SET ref='$ref',其中public_id='$id';
if(!mysql_query($sql,$con)){
die('Error:'.mysql_Error());
}否则{
echo“
参考号已成功分配
”;
}
有什么想法吗,伙计们
谢谢您可以获得受影响的行数:
$rowsAffected = mysql_affected_rows($con);
if($rowsAffected) {
//something WAS changed!
}
else {
//NOTHING was changed ... :-(
}
我也会小心的 您可能希望使用
mysqli
或PDO
的准备好的查询来完成您想要做的事情
根据OP的以下评论:
。。。
if(!mysql_query($sql,$con)){
die('Error:'.mysql_Error());
}否则{
$rowsAffected=mysql\u受影响的行($con);
如果($rowsAffected){
echo“
参考号已成功分配
”;
}
否则{
//显示一些错误消息?
}
}
在本例中,首先运行select命令以搜索具有特定参考号的记录。如果结果为eof,则运行insert命令。如果不是EOF,则向用户发送警告,说明参考号存在,然后选择另一个。多少?如何将此代码混合到上面的更新语句中?:Sit不显示任何错误消息。它只是将相同的数据提交到数据库?@MohemaBurhan$rowsAffected
是一个整数。如果号码不是0
,那么它是成功的,否则你应该点击else并显示错误消息。嗯?对不起,我是新来php的,所以请容忍我。我的文本框包含一些随机生成的值。这些值是字母和数字的组合。我已经复制了你的代码,在else部分,我已经放了一个echo语句。我复制了数据库中相同的参考号,但没有用。它仍然提交相同的数据,没有显示任何错误。@MohemaBurhan然后在MySQL中将列设置为唯一,这不是PHP的功能,而是数据库设计的功能。
...
if (!mysql_query($sql, $con)) {
die('Error: ' . mysql_error());
} else {
$rowsAffected = mysql_affected_rows($con);
if($rowsAffected) {
echo '<hr><h2>Reference Number Has Been Assigned Successfully</h2><hr>';
}
else {
//show some error message?
}
}