У меня есть 2 таблицы для идентификатора входа, имени пользователя, пароля и ранжирования, а другой для статуса учетной записи. Мне нужно присоединиться к таблицам, чтобы выполнять только все активные учетные записи. Каждый раз, когда я пытаюсь использовать свой код в phpmyadmin, он отлично работает, но в моей системе это не сработает. Есть ли что-то с моим кодом? Btw. Ранг - для проверки аккаунта, если вы администратор или учащийся.php internal join более 2 таблиц
$sql = "SELECT a.login_id,username,password,rank,b.status FROM login2 as a INNER JOIN login_stat2 as b ON a.login_id = b.login_id WHERE username ='".$username."' AND password='".$pass."' AND b.status='ACTIVE'";
$result = mysqli_query($con,$sql)or die(mysqli_error($con));
while($row = mysqli_num_rows($result));
session_regenerate_id();
$member = mysqli_fetch_assoc($result);
$_SESSION['SESS_MEMBER_ID'] = $member['login_id'];
$_SESSION['SESS_NAME'] = $member['username'];
$_SESSION['SESS_RANK'] = $member['rank'];
if($member['rank']=='administrator'){
header("location: login_reg.php");
}
else if($member['rank']=='student'){
header("location: student.php");
}
else if($member['rank']=='candidate'){
header("location: candidate.php");
}
}else{
print "Incorrect username or password";
session_write_close();
Определение "не будет работать". Самое очевидное, что я вижу, что цикл while на mysqli_num_rows не имеет смысла, поскольку сам по себе вызывает бесконечный цикл. –
Так что я должен делать? – Mals
Начну с того, что расскажу нам, что происходит _is_, что не происходит, а _all_ соответствующий код, а не недопустимые фрагменты. –