我一直盯著一個(gè)問題很久了。我有一個(gè) PHP 文件,它正在準(zhǔn)備插入查詢、綁定參數(shù)并執(zhí)行查詢(簡(jiǎn)單)。詢問$stmt = $db->prepare("SELECT insert_user(?, ?, ?, ?, ?, ?)");出于某種原因,execute 返回的 $stmt 對(duì)象為受影響的行返回 -1。如果我更改代碼以使用我想要綁定的值執(zhí)行插入查詢,而不是硬編碼,則查詢工作得很好。硬編碼查詢$db->query("SELECT insert_user('Test', 'Account', 'testAccount@testApp.io', 'testAccount9', '1980-01-01', 1)");bind_param 部分出了點(diǎn)問題。我打開了錯(cuò)誤并且也在檢查 mysqli 錯(cuò)誤,但兩者都沒有返回錯(cuò)誤。PHP文件...$postdata = file_get_contents("php://input");if (isset($postdata) && !empty($postdata)) { $request = json_decode($postdata);}if ( validate_string($request->fname) && validate_string($request->lname) && validate_integer(intval($request->gender))) { $stmt = $db->prepare("SELECT insert_user(?, ?, ?, ?, ?, ?)"); if ($stmt) { $stmt->bind_param("ssssis", $first_name, $last_name, $email, $password, $gender, $dob); $first_name = $request->fname; $last_name = request->lname; $email = $request->email; $password = password_hash($request->password, PASSWORD_BCRYPT); $gender = intval($request->gender); $dob = $request->dob; $stmt->execute(); if ($stmt->affected_rows > 0) { echo toJson('success'); } else { echo toJson('fail'); } } else { echo toJson("Prepare failed: (" . $db->errno . ") " . $db->error); }} else { echo toJson('fail - passed data not valid');}...我覺得此時(shí)的錯(cuò)誤一定很簡(jiǎn)單,但我已經(jīng)嘗試了至少 23,432 種不同的東西,但都沒有成功。
1 回答

慕神8447489
TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超1個(gè)贊
我猜問題出在這里 "ssssis" 。第五個(gè)應(yīng)該是字符串,最后一個(gè)整數(shù)。也許這應(yīng)該有效?
- 1 回答
- 0 關(guān)注
- 137 瀏覽
添加回答
舉報(bào)
0/150
提交
取消