php - 如何让JS读取PHP die抛出的代码

标签 php javascript jquery ajax

我的 JS 函数期望在失败时从 PHP 代码返回一定的返回值。

function showResult(data) 
{
    if (data == 'save_failed') {
        document.getElementById('result').innerHTML = 'Unfortunately, we were not able to save your information. Please contact an admin.';
        return false;
    } else {
        $("#notify").clearForm().clearFields().resetForm();
        document.getElementById('result').innerHTML = 'Thank you for signing up with us.';
        return false;
    }
}

当我在出现明确错误的情况下 echo 'save_failed'; 时,这有效,但在 die 语句的情况下不起作用,例如这个:

mysql_connect("host", "user", "pass") or die('save_failed');

我输入了错误的主机名,但 JS 函数没有收到 'save_failed' 返回。

PHP 脚本:

if (!(empty($_POST['name']) && empty($_POST['email'])))
    {
        //sanitizing inputs for MySQL insertion
        $name = mysql_real_escape_string($_POST['name']);
        $email = mysql_real_escape_string($_POST['email']);

        //connecting to db
        mysql_connect("host", "user", "pass") or die('save_failed');
        mysql_select_db("table") or die('save_failed');

        //inserting into table
        mysql_query("INSERT INTO notify (name, email) VALUES('" . $name . "', '" . $email . "' ) ") 
        or die('save_failed');  

    }
    else
    {
        echo 'save_failed';
    }

最佳答案

即使 die("save_failed") 会输出“save_failed”,它也不会阻止发送脚本中任何先前的输出。

确保如果您自己转到脚本,那么您只会在页面源中收到“save_failed”并且没有错误的字符

关于php - 如何让JS读取PHP die抛出的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7791808/

相关文章:

php - 如何在 drupal 7 中制作像 Stackoverflow 这样的主菜单?

javascript - RouteXL API 畅游

javascript - Highcharts 背景图片大小选项

jquery - 对象不支持属性或方法 'slider'(Sharepoint 2010 中的 jquery)

javascript - 在 for 循环中发出,仅获取最后一项

php - 单击提交前 undefined variable

javascript - 如何覆盖远程表单操作 URL?

php - 使用 PHPMailer 发送附件

javascript - 我如何使用 jquery 隐藏下一组元素

jquery - beforeSend 不会将授权 header 添加到我的 jquery ajax 调用中(基本授权)