Добрый вечер, я просто пробую что-то новое (по крайней мере, мне) о том, как входить в систему из разных таблиц. В таблице 1 есть cand_id (имя пользователя), в то время как Table2 имеет pincode (пароль). Сервер не обнаруживает ошибок при попытке входа в систему, но не работает. Мой код ниже:
if (isset($_POST['cand_id'])) {
//escapes special characters in a string
$cand_id = mysqli_real_escape_string($con,$cand_id);
$pincode = mysqli_real_escape_string($con,$pincode);
//Checking is user existing in the database or not
$query = "SELECT cand_id
FROM candidates
WHERE cand_id='$cand_id'
UNION
SELECT pincode
FROM cand_login
WHERE pincode='$pincode'";
$result = mysqli_query($con,$query) or die(mysql_error());
$rows = mysqli_num_rows($result);
if($rows==1) {
$_SESSION['cand_id'] = $cand_id;
// Redirect user to index.php
header("Location: home.php");
} else {
echo "<div class='form'>
<h3>cand_id/pincode is incorrect.</h3>
<br/>Click here to <a href='log.php'>Login</a></div>";
}
} else {
}
Что мне нужно для выполнения этой работы?
Здесь много чего не так.
real_escape_string()
чтобы предотвратить SQL-инъекцию, но их недостаточно.pincode
вы все равно получите cand_id
если cand_id
существует.
} }else{