作者lhsieh (不要问)
看板PHP
标题[请益] 不同机器间的程序或SQL的问题?
时间Sat Feb 4 18:59:16 2017
A:local工作+测试 IIS + PHP(HTTP), nodejs express(HTTPS,RTC测试)
B:PHP主要执行位置 IIS + PHP + MSSQL(HTTPS,DB测试用,PHP就A的版本)
C:主要的DB位置(DB结构跟B相同) IIS + MSSQL
D:IIS, nodejs express(HTTPS,RTC主跑)
B,C,D都server 2008 R2 (amz的EC2), B,C的SQLServer是2008 R2
A(PHP执行)→直接处理B(DB) OK
A(PHP执行)→
直接处理C(DB) OK
A(PHP执行)→A(RTC,ajax处理通话记录)→B(PHP,处理B(DB)) response ok
A(PHP执行)→
D(RTC,ajax处理通话记录)→B(PHP,处理B(DB)) response ok
A(PHP执行)→A(RTC,ajax处理通话记录)→B(PHP,
处理C(DB)) xhr.status 500
A(PHP执行)→D(RTC,ajax处理通话记录)→B(PHP,
处理C(DB)) xhr.status 500
B(PHP执行)→直接处理B(DB) OK
B(PHP执行)→
直接处理C(DB) OK
B(PHP执行)→
D(RTC,ajax处理通话记录)→B(PHP,处理B(DB)) response ok
B(PHP执行)→D(RTC,ajax处理通话记录)→B(PHP,
处理C(DB)) xhr.status 500
C发生问题的DB动作:
动作1 取主档表a中的资料 (ok)
动作2 於表b新增记录 (未写入)
动作3 response 动作2新增记录的key值 (自然找不到)
动作2:
$sql = "INSERT INTO 表b (a,b,c...) VALUES (?,?,?...)";
$stmt = $dbt->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY,
PDO::SQLSRV_ATTR_QUERY_TIMEOUT => 1));
$stmt->execute(array($值1,$值2,$值3...));
连DB是透过sqlsrv扩展,切换B,C不同DB是换掉连线设定档中的server,user,pass变数
Access-Control-Allow-Origin有设(B,来自A或D的request),且动作1是OK的
检查B,C两台DB表b的结构,都相同(检查N^遍)
请教大家有可能是哪部份问题?
ps.写好几个处理,从第6个开始就觉得"处理"两字怪怪的,好像有写错XD
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 119.81.230.159
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PHP/M.1486205960.A.31A.html
※ 编辑: lhsieh (119.81.230.159), 02/04/2017 20:44:30
1F:→ iFEELing: 500 啊你的错误讯息咧? 02/05 02:16
2F:→ lhsieh: PHP Fatal error: Call to a member function execute() 02/05 06:02
3F:→ lhsieh: on a non-object in .... 动作3的部份 02/05 06:05
4F:→ lhsieh: 进DB检查,动作2就没work 02/05 06:06
5F:→ lhsieh: 把500改一下,会误解 02/05 06:22
※ 编辑: lhsieh (119.81.43.231), 02/05/2017 07:52:50
6F:→ lhsieh: 找到问题了 C表b的栏位start_tutor(o) start_turor(x) 02/05 09:55
7F:→ lhsieh: 密集检查N^遍真的无益,煮个早餐看新闻再回头比较有益 02/05 09:57
8F:→ lhsieh: 都是萤幕字太小的问题 打扰了 02/05 09:59