Я попытался выяснить ошибку в течение некоторого времени. Даже пытались использовать try и catch, но безрезультатно. Результат, который я получаю, это «запрос с ошибкой» (который является частью else). Также код работает на другой машине. Может ли кто-нибудь помочь мне понять это?PHP-код не работает и не упоминается об ошибках
<?php
session_start();
//Include database connection details
require_once('connect.php');
//Array to store validation errors
$errmsg_arr = array();
//Validation error flag
$errflag = false;
//Function to sanitize values received from the form. Prevents SQL injection
function clean($str) {
$str = @trim($str);
if(get_magic_quotes_gpc()) {
$str = stripslashes($str);
}
return mysql_real_escape_string($str);
}
try {
//Sanitize the POST values
$username = clean($_POST['username']);
$phone = clean($_POST['phone']);
/*$username = 'Ajay M';
$phone = '9810827804';*/
//Input Validations
if($username == '') {
$errmsg_arr[] = 'Username missing';
$errflag = true;
}
if($phone == '') {
$errmsg_arr[] = 'phone missing';
$errflag = true;
}
//If there are input validations, redirect back to the login form
if($errflag) {
$_SESSION['ERRMSG_ARR'] = $errmsg_arr;
session_write_close();
header("location: log.php");
exit();
}
//Create query
$qry="SELECT * FROM app_user WHERE name='$username' AND phone='$phone'";
$result=mysql_query($qry);
//Check whether the query was successful or not
if($result) {
if(mysql_num_rows($result) > 0) {
//Login Successful
session_regenerate_id();
$member = mysql_fetch_assoc($result);
$_SESSION['SESS_MEMBER_ID'] = $member['id'];
$_SESSION['SESS_NAME'] = $member['username'];
$_SESSION['SESS_PHONE'] = $member['phone'];
session_write_close();
header("location: suzuki_home.php");
exit();
}else {
//Login failed
$errmsg_arr[] = 'user name and phone not found';
$errflag = true;
if($errflag) {
$_SESSION['ERRMSG_ARR'] = $errmsg_arr;
session_write_close();
header("location: fail.php");
exit();
}
}
}else {
die("Query failed");
}
}
catch (Exception $e) {
echo ($e->getMessage());
}
?>
http://php.net/mysql_error – deceze
Это может быть ошибка MYSQL, которая не возвращает ничего, кроме, если вы используете mysql_error. Вы можете найти информацию об этом по ссылке выше. – Mordalthunder
Попробуйте отладить код, распечатав переменные в разных точках. И посмотри, где он застрял. – aBhijit