PHP 调用 js 连接数据库报错“Unexpected end of JSON input”

161 天前
 lon91ong

代码示例如下:

define("PGDB_HOST","10.0.18.233"); // 数据库地址
define("PGDB_PORT","5432"); // 端口,PostgreSQL 的端口默认 5432
define("PGDB_USER","postgres"); // 登录名
define("PGDB_PASS","654321bcd"); // 密码
define("PGDB_BASE_MEMBER","DSMember"); // 数据库名
...
$pgdb = @pg_connect(sprintf("host=%s port=%d dbname=%s user=%s password=%s", PGDB_HOST, PGDB_PORT, PGDB_BASE_MEMBER, PGDB_USER, PGDB_PASS));

页面调用信息:

怀疑的 jquery 的问题,但是小白完全不知道如何解决

1017 次点击
所在节点    PHP
5 条回复
jowan
161 天前
接口返回了非标准 JSON 响应值 查看一下 response 不就知道了吗
lon91ong
161 天前
@jowan 错误在 send 时就会触发,根本收不到响应数据
lon91ong
161 天前
折腾了半天,原来时 php 数据库插件没装
jowan
160 天前
@lon91ong 对呀 如果你接口报错了 而且不是同一个域下面 php 的报错你前端 response 看不到 这个问题归根结底是后端报错 没有正确返回 json 导致前端 parse json 出错 你的提问也存在问题 是 js 调用 php 接口报错 不是 php 调用 js 连接数据库
iSecret
160 天前
OP 理解有些问题,首先标题,按内容的表述应该是 JS 调用 PHP 接口报错;其次是内容 jQuery 只是 JS 封装,让你更方便的操作 JS ,本质上是发起一个 HTTP 请求,如果是 HTTP 请求,你只需要关注 请求地址、请求参数和响应内容( Response ),标题中提到的「 Unexpected end of JSON input 」是 JQuery 发起 HTTP 请求后转换 JSON 时抛出的异常,可以排查一下响应的内容,并学会 Debug 定位异常和处理异常。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/996618

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX