如何从Ajax调用PHP文件失败中获取更多信息?

时间:2012-04-05 12:30:38

标签: php javascript ajax error-handling internal

我将我的网站移到服务器上以便上线,但是我遇到了一个Ajax调用问题,该文件旨在返回一个文本值。我试图找出错误是什么。该代码适用于我的本地PC。

我从Ajax调用得到的错误是:

Error: error Internal Server Error

我正在使用以下代码来执行调用:

function goClick(ttype, vvalue) {

    $.get(fw_script, { type: ttype, value: vvalue, langpref: langpref })
        .success(function(result) {
            setResult(result);
        })
        .error(function(jqXHR, textStatus, errorThrown) {
            setResult("Error: " + textStatus + " " + errorThrown);
            alert("Failure");
        });

}

如何获取有关可能导致此问题的更多信息?我不是PHP的专家。在PHP中是否有一些Java的try {} catch {} finally{}?这是在服务器端捕获异常错误的正确方法吗?我应该用catch包装我的PHP代码吗?如何检索有关内部错误的信息?

2 个答案:

答案 0 :(得分:2)

你说得对。 try {} catch {}在PHP中的工作方式相同。 http://php.net/manual/en/language.exceptions.php

内部服务器错误通常是由PHP文件中的拼写错误或类似错误引起的。您可以尝试启用错误日志记录以获取有关错误的更多详细信息。

答案 1 :(得分:2)

将以下代码放在php脚本之上  //记录php错误

<?php
@ini_set('log_errors','On'); // enable or disable php error logging (use 'On' or 'Off')
@ini_set('display_errors','Off'); // enable or disable public display of errors (use 'On' or 'Off')
@ini_set('error_log','/home/path/logs/php-errors.log'); // path to server-writable log file
?>