如何回显消息并从 PHP 向 AJAX 返回代码


How can I echo a message and return a code to AJAX from PHP

All,

我有一个AJAX函数,它通过html数据类型调用PHP URL。由于服务器限制,我无法对 AJAX 请求使用其他数据类型。我正在尝试打印消息并根据返回代码处理场景。以下代码似乎不起作用。你能建议吗?

下面是一个简单的 AJAX 调用:

    $.ajax({
       type: "POST",
       url: "validateUser.php",
       dataType: html,
       success: function(msg, errorCode){
         if(errorCode == 10)
         {
           callAFunction();
         }
         else if(errorCode == 20)
         {
           callSomething();
         }
         else
         {
           doSomethingElse();
         }
       }
     });
PHP CODE:
---------
 <?php
       function validateUser()
        {
          $username = 'xyz';
          if (!empty($username) && strlen($username)>5)
           {
             echo 'User Validated';
             return 10;
           }
           else if (empty($username))
           {
             echo 'Improper Username';
             return 20;
           }
           else if (strlen($username)<5)
           {
             echo 'Username length should be atleast 5 characters';
             return 30;
           } 
          exit;
         }
?>

谢谢

你的PHP只是一个函数。它没有被召唤。

此外,您不会向 PHP 文件发送任何数据。

你可以做的是将它们打印成这样的div。

<div class="errorcode">30</div><div class="errormessage">Username length should be atleast 5 characters</div>

然后在 Ajax 中的 success 函数中,您可以使用 jQuery 来解析响应文本并使用 $(".errorcode").html() and $(".errormessage").html() 等选择器并获取响应。 这让事情变得容易

看起来你没有发布任何东西

在 validateUser() 末尾删除exit;。它会导致整个脚本的执行立即停止。
由于这是 validateUser() 的最后一行,因此无需添加 return

文档:退出、返回