У меня есть страница для входа. , когда я не использую mysql_real_escape_string с именем пользователя и паролем. Нет проблем.mysql_real_escape_string function
Но когда я использую mysql_real_escape_string с именем пользователя и паролем я не могу войти на главную страницу, и я получаю страница не найдена, и когда я обновите страницу, я получаю выберите * от входа, где имя пользователя = «» и пароль = «» неправильно
формы страница
<?php
session_start();
if(!isset($_SESSION['username'])) {
?>
<html>
<body>
<form action="w.php" method="post">
Username :
<input type = "text" name="username" />
<br />
Pass :
<input type = "password" name = "password" />
<input type="submit" vale = "ok">
</form>
</body>
</html>
<?php
} else {
?>
<html>
<body>
you are login
<a href ="logout.php">logout</a>
</body>
</html>
<?php
}
?>
и веб-страница
<?php
session_start();
$_POST = array_map('removeSlashes',$_POST);
function removeSlashes($value) {
if(is_array($value)) {
$value = array_map('removeSlashes',$value);
} else {
$value = stripslashes($value);
}
return $value;
}
$con = mysql_connect('localhost', 'root', 'a12345');
$db ='sess1';
$select = mysql_select_db($db);
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$query= "select * from login where username= '$username' and password = '$password' ";
echo "$query";
$result = mysql_query($query) or die (mysql_error());
if(mysql_affected_rows() > 0) {
$_SESSION['username'] = true;
header('location:index.php');
} else {
echo "wrong";
}
?>
У вас ошибка «страница не найдена» при добавлении mysql_real_escape_string()? Я не считаю, что это вызывает проблему. –
@MarcelBalzer да. когда я использую такой же код, я получаю страницу не найденной. но когда я удалю его, страница откроется, и я получу вас, войдите в систему – user3264926
OMG вы взяли пароль, введите текст типа. Я не могу в это поверить. –