作者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/m.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