如果我的PHP腳本返回錯誤,則我想要執行的操作是向用戶alert()一條錯誤消息。有人能告訴我如何做到這一點?如果我的服務器代碼返回false,如何回顯錯誤
0
A
回答
0
編輯:
所以我會做的是簡單地使用JSON並返回與例如消息200響應
PHP
$validationErrors = array();
foreach($data as $name => $value){
// validate each value, if its not valid append a message to the $validationErrors array
// like $validationErrors[$name] = $message;
}
if(!empty($validationErrors)){
// send json headers so jquery can parse properly
header('Content-type: application/json');
echo json_encode('valid'=>false, 'errors' => $validationErrors));
exit;
} else {
// send json headers so jquery can parse properly
header('Content-type: application/json');
echo json_encode(array('valid'=>true));
exit;
}
的jQuery:
$.ajax({
url: '/url/for/whatever.php',
data: {'my': 'data'},
dataType: 'json',
success: function(response){
if(!response.valid){
$.each(response.errors, function(name, msg){
var errmsg = $('<div class="error"></div>').text(msg);
$('[name='+name+']').before(errmsg);
});
alert('Errors were found!');
}
}
});
這樣你也可以顯示e爲每個字段提供反饋,允許用戶更正它們。你可能需要修改我的錯誤信息插入,但你明白了。
假設你的意思使用$.ajax
你會簡單的分配誤差函數:
$.ajax({
url: '/url/for/whatever.php',
data: {'my': 'data'},
error: function(){
alert('An error occurred!');
}
success: function(response){
// whatever happens if the response is successful
}
});
然而,對於要調用的誤差函數的服務器必須使用400或500系列錯誤代碼進行響應。例如,如果你正在處理你的php中的錯誤,然後輸出錯誤消息,那麼可以假設你將發送200響應,所以成功函數仍然會被調用。如果需要,可以使用php header()
函數手動設置標題來操作。
0
相關問題
- 1. 如果類型錯誤,返回False
- 2. mysql服務器返回錯誤結果
- 3. 如果服務器返回502錯誤,我該如何讀取HTTP響應?
- 4. 如何從服務中返回錯誤?
- 5. 開發服務器返回的響應錯誤代碼:500
- 6. 服務器返回錯誤的HTTP響應。代碼500
- 7. 什麼是錯誤代碼35,由telegram.org服務器返回
- 8. 錯誤的JavaScript代碼,如果我寫的RUNAT = 「服務器」
- 9. Rails:如果before_update回調返回false,我如何取消保存?
- 10. Rhosync服務器錯誤:服務器返回錯誤
- 11. Android:SQLite:如果isDatabaseIntegrityOK()返回false
- 12. 如果isset返回false
- 13. 返回值與返回錯誤代碼?
- 14. htaccess reditect如果服務器返回404
- 15. 如何使用DOM檢查返回的服務器代碼?
- 16. MKReverseGeocoder服務器返回的錯誤:503
- 17. 如何提高我的代碼來實現'返回false'?
- 18. isSelected返回false和器isChecked顯示在上面的代碼編譯錯誤
- 19. 如果服務器在2秒後沒有響應,如何使cURL返回false?
- 20. AngularJS代碼返回錯誤?
- 21. JS代碼返回錯誤
- 22. 返回錯誤代碼
- 23. drupal_http_request返回錯誤代碼
- 24. 如果沒有找到記錄返回false,則返回false
- 25. Smtp服務器不返回錯誤
- 26. 服務器端GCM返回錯誤400
- 27. ChefServer - 服務器返回錯誤502
- 28. 服務器返回編譯錯誤
- 29. 遠程服務器返回錯誤:NotFound
- 30. 遠程服務器返回錯誤:NOTFOUND
你目前有什麼代碼? – 2010-10-13 06:03:45