2014-03-27 80 views
0

我承認我是一個新手,當涉及到PDO,但我必須改變一個在MySQL中的窗體..我得到連接,但沒有插入..我真的卡住,感覺像一個白癡,因爲我知道這是一些簡單的我失蹤使用PDO插入php

我已經嘗試具有高於和插入後的數組..無論是工作

任何幫助,將不勝感激

這裏是我的代碼:

$conn = new PDO("mysql:host=$dbhost;dbname=$dbname",$dbuser,$dbpass); 


$STH = $conn->prepare("INSERT INTO PinTrade (ID, PIN, Year, Make, Model, Mileage, FirstName, LastName, Phone, Email, Date) 
VALUES ('', '$pin', '$year', '$make', '$model', '$mileage', '$first', '$last', '$phone', '$email', '1234')"); 
$STH->bindParam(':PIN', $_POST['pin']); 
$STH->bindParam(':Year', $_POST['year']); 
$STH->bindParam(':Make', $_POST['make']); 
$STH->bindParam(':Model', $_POST['model']); 
$STH->bindParam(':Mileage', $_POST['mileage']); 
$STH->bindParam(':FirstName', $_POST['first']); 
$STH->bindParam(':LastName', $_POST['last']); 
$STH->bindParam(':Phone', $_POST['phone']); 
$STH->bindParam(':Email', $_POST['email']); 
$STH->execute(); 
+1

首先:http://stackoverflow.com/questions/3726505/how-to-squeeze-error-message-out-of-pdo –

+1

您需要將所有值更改爲bindParam()處理 - 不是'$ model',而是:查詢中的模型。 –

+0

但是你的問題相當愚蠢:你正在使用PDO錯誤的方式。你正在學習什麼教程? –

回答

1

在查詢中值擺脫了美元符號和報價:

$STH = $conn->prepare("INSERT INTO PinTrade (ID, PIN, Year, Make, 
         Model, Mileage,  FirstName, LastName, Phone, Email, Date) 
         VALUES (null, :PIN, :Year, :Make, //and so on.... 

還要注意,假設ID是自動遞增的字段,只需要插入空

VALUES (null, :PIN, 

最後,如果你拉從後陣,我會使用bindValue超過bindParam

+0

謝謝大家誰幫助。我真的,真的很感激! – user2754629