Хорошо, это, наверное, очень просто, но я весь день ломал себе голову над этим и не могу заставить его работать.
У меня есть страница, на которой есть функция, которая addusers. Для этого я отправляю AJAX вызов обработчику. php, который выполняет некоторую проверку и отправляет ошибку , если она есть, или успех сообщение, если все в порядке. ОК.
В процедурном PHP я могу легко решить эту проблему с помощью следующего подхода:
ПРИМЕЧАНИЕ: (Мой подход) Это просто демонстрационный код, чтобы показать, как ajax обрабатывает ОШИБКУ: Сообщения УСПЕХ
<p id="display_error"></p> // all success/error display here
Ajax успех
success: function(response)
{
if((response !== "") && ($.isNumeric(response))) {
{
//redirect in ajax success
location.href = "http://localhost/manage/info.php?id="+ response;
}
else {
//this will display the custom error.
$("#display_error").html("<p>" + response + "</p>"); //output: something went wrong!
}
}
PHP
if(num_rows > 0) {
$conn = mysqli_connect();
$query = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('$fname', '$lname', '$email')";
$result = mysqli_query($conn, $query) or die ('Error Could Not Query');
$id = mysqli_insert_id($result);
echo $id;
mysqli_close($conn);
} else {
echo 'something went wrong!';
}
Но теперь Я переключаюсь на классы ... Я и не знаю, как отображать сообщение об ошибке или успешном выполнении, используя ajax в php функциях. Проблема в вызове функции. это основы, которые PHP отображают сообщение об ошибке или успешном завершении, откуда вызывается фактическая функция. В приведенном ниже коде функция вызывается со страницы индекса, недоступной для ajax, для получения сообщений об успехе или ошибках. Есть ли лучший подход к обработке ошибок php ajax? Я новичок в этом ... люблю видеть ..
обработчик. php
function addUser($firstname, $lastname, $email)
{
global $db;
// prepare and bind
$stmt = $db->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES (?, ?, ?)");
$stmt->bind_param("sss", $firstname, $lastname, $email);
if($stmt->execute())
{
echo "New records created successfully";
}else
{
echo "something went wrong!";
}
$stmt->close();
}
addUser('Navjot','singh','ns00@domain.com'); //calling from index.php page