У меня есть следующий сценарий входа.Ответ JSON для скрипта входа с PHP
<?php
include("connect.php");
include("functions.php");
$error = "";
$j = new stdClass();
$j->status = "success";
$j->message = "Logged In";
if(isset($_POST['submit'])){
$email = mysqli_real_escape_string($con,$_POST['email']);
$password = mysqli_real_escape_string($con,$_POST['password']);
if(email_exists($email,$con)){
$error = "Email Exists";
echo json_encode($j);
}else{
$error = "Email does not exist";
}
}
?>
Файл functions.php есть.
<?php
function email_exists($email,$con){
$result = mysqli_query($con,"SELECT id FROM users WHERE email='$email'");
if(mysqli_num_rows($result) == 1){
return true;
}else{
return false;
}
}
?>
То, что я делаю, выбор идентификаторов из базы данных и проверить, если адрес электронной почты существует с функцией
mysqli_num_rows(query)
. Если он возвращает один или true, тогда существует электронная почта, поэтому пользователь может войти в систему. Если не значение, мы возвращаем 0 или false, то электронной почты не существует, и, следовательно, пользователь не может войти.
Я хочу вернуться для каждого случая ответ JSON. Например, если будет найден адрес электронной почты пользователя.
{
"status":"success"
"message:"You are now logged in"
}
Когда электронная почта пользователя не найден, то,
{
"status":"fail"
"message:"email not found"
}
Любые идеи? Я создал следующую переменную, но только для случая успеха. Я хочу, чтобы одна и та же переменная была изменена, если не было найдено ни одного адреса электронной почты
$j = new stdClass();
$j->status = "success";
$j->message = "Logged In";
Спасибо.
у вас есть json_encode массив, а не объект, функция является один созданием объекта для отправки на стороне клиента –
Почему? Он также работает с объектом;) – l0rkaY