Я хочу, чтобы у меня появилось сообщение об ошибке, если этот idno завершил регистрацию в 2015 году. Нет необходимости в уникальной причине idno, я должен быть избыточным, потому что каждый год, который idno может сохранять или регистрировать в базе данных, но проблема в том, что я хочу проверить если он уже зарегистрирован в 2015 или 2016 году или 2017 году.
Вот мой код для сохранения информации о студентах:
<?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'); $sql = mysql_query("SELECT * FROM student where idno = '$idno'")or die(mysql_error()); $count = mysql_num_rows($sql); $sql1 = mysql_query("SELECT * FROM student,school_year where student.syearid = school_year.syearid AND school_year.from_year like $YearNow")or die(mysql_error()); $count1 = mysql_num_rows($sql1); if (don't know what to condition on this part ) { echo"idno $idno has already registered in that year"; } 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>"; } ?>
Мне нужна помощь, пожалуйста, мне нужна помощь. благодаря
Таблица School_year имеет (syearid (уникальный), from_year (2015), to_year (например, 2016))
Прежде всего привяжите его к вашему запросу, чтобы предотвратить некоторые из SQL-инъекций . Вы можете использовать *_real_escape_string
:
$lastname = mysql_real_escape_string($_POST['lastname']);
Сделайте это для остальной части переданных данных.
И для вашего условия if()
вы можете это сделать ( как уже отмечалось @ chris85 ):
if($count >= 1 || $count1 >= 1){ echo "idno $idno has already registered in that year"; }
И, пожалуйста, воздержитесь от использования mysql_*
API, потому что он уже устарел и должен использовать mysqli_*
или PDO
.