簡體   English   中英

如何在 php class 函數調用中使用 ajax 顯示錯誤?

[英]how to display error using ajax in php class functions call?

好吧,這可能非常簡單,但我整天都在為此煩惱,我無法讓它工作。

我有一個頁面,上面有一個添加用戶的 function。 為此,我向 handler.php 發送了一個 AJAX 調用,它會進行一些驗證並在有錯誤時發送錯誤,如果一切正常則發送成功消息。

在程序 PHP 中,我可以通過以下方法輕松解決此問題:

注意:(我的方法)這只是一個演示代碼,用於展示 ajax 如何處理 ERROR:SUCCESS 消息

<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!';
}

但是現在我切換到類...我不知道如何在 php 函數中使用 ajax 顯示錯誤或成功消息。 問題出在 function 調用中。 它是 PHP 顯示錯誤或成功消息的基礎,其中實際的 function 被調用。 在下面的代碼中,從 ajax 無法訪問的索引頁面調用 function 以獲取成功或錯誤消息。 php ajax 錯誤處理中是否有更好的方法? 我是新來的……喜歡看……

handler.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 

對 ajax 調用結果使用 json_encode。 例如, echo json_encode(array('status' => 1, 'your value' => '')); 或 echo json_encode(array('status' => 0, 'error_msg' => ''));

在你的前端,如果你使用 PHP 那么你可以使用 json_decode(),如果你使用 javascript 那么你可以使用 JSON.parse()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM