3 回答
TA貢獻1895條經(jīng)驗 獲得超3個贊
修復(fù)查詢中的問題
您在查詢和值參數(shù)中傳遞了 8 個參數(shù) 您傳遞了 9 個參數(shù) "'$user', 0, , '$payment_gross'" 只需在 "0," 后刪除一個 ","
TA貢獻2003條經(jīng)驗 獲得超2個贊
$odb 的類型是什么?如果它是一個 PDO 對象,你應(yīng)該調(diào)用
$odb->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
這樣調(diào)用query將顯示錯誤是什么。
但是,從查看您的 SQL 來看,您似乎有 8 個命名參數(shù),但值列表中有 9 個,盡管其中一個是空的。因此,請確保您傳遞了正確的參數(shù)。
- 編輯 -
查看上面的代碼,頂部似乎有額外的逗號。我已經(jīng)整理了您的代碼并添加了錯誤捕獲。
它會將您的代碼結(jié)果寫入文件results.txt。調(diào)用此方法后,查看此文件以查看發(fā)生了什么。
$insertOrder='?';
$error='?';
try
{
$ordername = $_POST['item_name'];
$user = $_SESSION['username'];
$payment_gross = $_POST['mc_gross'];
$odb->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$insertOrder = $odb -> query("INSERT INTO orders (`ordername`, `content`, `status`, `list`, `username`, `date`, `price`) VALUES ('$ordername', 0, 0, 0,'$user', 0,'$payment_gross')");
}
catch (Exception $ex)
{
$error=$ex->getMessage();
}
file_put_contents('results.txt',"error: $error - sqlresult: $insertOrder");
TA貢獻1796條經(jīng)驗 獲得超7個贊
嘗試這個。
$ordername = $_POST['item_name'];
$user = $_SESSION['username'];
$payment_gross = $_POST['mc_gross'];
$insertOrder = $odb -> query("INSERT INTO orders (id, ordername, content, status, list, sername, date, price)
VALUES(NULL, '$ordername', 0, 0, 0, '$user', 0, '$payment_gross')");
- 3 回答
- 0 關(guān)注
- 164 瀏覽
添加回答
舉報
