如何检查2个值是否存在,例如
=============\
idno || syearid
c23 2
c23 3
如下图所示:
如果idno c23
存在且syearid 2
存在,则会发出此idno
和syearuid
的消息。但是当我保存idno c23
和syearid 4
时,它会被保存,因为它是相同的idno
但不是syearid
。我该怎么办?
<?php
if (isset($_POST['save'])){
$stud_id= $_POST['stud_id'];
$idno = $_POST['idno'];
$lastname = $_POST['lastname'];
$firstname = $_POST['firstname'];
$middlename= $_POST['middlename'];
$year= $_POST['year'];
$dept_id = $_POST['dept_id'];
$progid = $_POST['progid'];
$user_type = $_POST['user_type'];
$password= $_POST['password'];
$syear= $_POST['syearid'];
$YearNow=Date('Y');
$sql1 = mysql_query("SELECT * FROM student,school_year where idno = '$idno' AND student.syearid = school_year.syearid AND school_year.from_year like $YearNow")or die(mysql_error());
$count1 = mysql_num_rows($sql1);
if ($idno AND $YearNow == $count1 >1 ) {
echo"idno $idno has already exist with an exact current year $YearNow";
}
else{
// query
$sql = "INSERT INTO student VALUES ('$stud_id','$idno','$dept_id','$progid','$syear','0','$lastname','$firstname','$middlename','$year','$password','$user_type')";
$result = mysql_query($sql) or die(mysql_error());
echo "<script type='text/javascript'>\n";
echo "alert('Successfully Added.');\n";
echo "window.location = 'addusers.php';";
echo "</script>";
}
?>
答案 0 :(得分:1)
您可以将“idno”和“syearid”作为表格的复合唯一键
ALTER TABLE student ADD UNIQUE KEY (idno, syearid);
将idno和syearid的组合视为唯一实体,数据库在插入重复条目时会产生错误。
答案 1 :(得分:0)
生成一个数组 然后你就可以在逻辑中执行检查了, 例如检查idno id 2。
我希望这是你想要的。
if(in_array(2, $idno)){
// echo id 2 is received
}