编辑:好的,现在我想起来了,JSON 听起来确实不错,只要我编码正确,就不应该有语法错误来破坏它或任何东西。
晚上好!
一直困扰我的是如何在 AJAX 请求中处理从 PHP 返回的数据,以及如何返回数据!
假设我有一个登录表单,它通过 AJAX 处理提交的表单数据。为了简单起见,我们会说我们使用 GET。
"page.php?username=Foo&password=bar"
以下是我的错误/烦恼,以及为什么我会感到强迫并感觉好像我需要知道正确的方法来做到这一点:
我发送了数据,它已被处理。怎么办?
假设我的用户名和密码有效/正确。我该怎么办?
在 PHP 中返回true ?一个字符串?
那么我该如何处理 JavaScript 呢?
if(ajaxRequest.responseText=="true"){
//Username and password are correct! Execute this...
}
我认为一个很酷的想法是将 JSON 对象作为字符串返回,并通过 JavaScript 进行解析。
var object=JSON.parse(ajaxRequest.responseText);
if(object.success=="true"){
//Username and password are correct! Execute this...
}
但是,如果我的用户名和密码组合是……错误怎么办?我是通过 PHP返回false还是再次返回字符串?
在true和false之间,只有 2 个选择: 1. 用户名和密码正确 2. 用户名和密码不正确
但是如果用户名甚至不存在怎么办?返回“false”并不能帮助我告诉客户他们无法登录的确切原因。
深入了解我的强迫症,意外或解析错误呢?
如果存在某种 DB 连接错误或解析错误,我该如何返回以告诉用户?我调查了 Trying...and Catching 语法错误,但我没有运气。
我最近的一个想法是这样做:
如果一切正常执行,并且用户名和密码存在(回到我们原来的场景),那么我们不会返回任何东西。responseText 将是一个空字符串。即表示用户登录成功!
否则,如果出现错误,请返回某些内容(通常是字符串)并将其显示为错误。
我会以正确的方式解决这个问题吗?我在正确的轨道上吗?