【问题标题】:Angular JS http Bad Data ErrorAngular JS http坏数据错误
【发布时间】:2018-09-12 22:17:58
【问题描述】:

我是 Angular 的新手。所以我决定使用 Angular 进行示例登录。 我将用户名和密码发送到 HTTP 服务器。我需要的是仅当数据库 [php] 中的用户名和密码与用户输入的数据相同时才能访问仪表板。

我写了代码,当尝试点击登录按钮时,我收到以下错误。

Error: [$http:baddata] http://errors.angularjs.org/1.6.9/$http/baddata?p0=%3Cbr%20%2F%3E%0A%3Cb%3EFatal%20error%3C%2Fb%3E%3A%20%20Uncaught%20Error%3A%20Call%20to%20undefined%20function%20mysql_num_rows()%20in%20C%3A%5Cxampp%5Chtdocs%5Cwebpage%5Cserver.php%3A20%0AStack%20trace%3A%0A%230%20%7Bmain%7D%0A%20%20thrown%20in%20%3Cb%3EC%3A%5Cxampp%5Chtdocs%5Cwebpage%5Cserver.php%3C%2Fb%3E%20on%20line%20%3Cb%3E20%3C%2Fb%3E%3Cbr%20%2F%3E%0A&p1=%7B%7D Stack trace:

我很困惑,不知道如何解决这个问题。 请查看附件并帮助我解决此问题。

https://pastebin.com/MKsHVuFX - main.js
https://pastebin.com/JdSjf0Fe - dashboard.html
https://pastebin.com/hR6xwXde - server.php
https://pastebin.com/GGzetT3v - login.html
https://pastebin.com/YUiNw6z2 - index.html

【问题讨论】:

  • 你有mysql_num_rows(result),但是你把数据保存在$result,所以把它改成mysql_num_rows($result)
  • 你好@AlekseySolovey 我已经改变了,但它仍然显示同样的错误。有什么想法吗?
  • 对于 PHP 5+ 版本,我认为您可能需要 mysqli_num_rows() 而不是 mysql_num_rows()。 (也对你的security做点什么)
  • 哇。修复了问题。感谢您提供信息和解决方案。

标签: php angularjs json httpserver


【解决方案1】:

尝试访问错误消息中的url,因为您的服务器端代码似乎没有重新调整 angularjs 所必需的有效 json 响应。

检查您的 server.php 代码,可能会返回一些警告/错误。

【讨论】:

  • 谢谢。当我在 URL 中加载 php 文件时,我得到以下 URL:SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data.. 你知道吗?
  • @DeepeshKumar 这意味着您正在尝试解析(可能是自动)实际上是 PHP 错误的 JSON 数据
  • 在您的 server.php 中,您需要使用 mysqli 函数,而不是 mysql(已弃用)。在 mysqli_num_rows 的第 20 行更改它并检查其他错误。
  • 哇。修复了问题。感谢您提供信息和解决方案。
猜你喜欢
  • 1970-01-01
  • 2015-02-06
  • 2015-11-18
  • 2016-05-21
  • 2017-10-30
  • 1970-01-01
  • 1970-01-01
  • 2018-01-21
  • 2018-01-07
相关资源
最近更新 更多