2013-05-15 168 views
1

我正在將所有查詢都轉換爲PDO,而我是新手。 這是一個非常愚蠢的問題,但爲什麼下面的代碼不工作?PHP PDO簡單插入不起作用

try { 
    $conn = new PDO('mysql:host=localhost;dbname=ddd', $user, $password); 
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
} catch(PDOException $e) { 
    echo 'ERROR: ' . $e->getMessage(); 
} 
       $id = $_SESSION['id']; 
       $name = $_POST['name']; 
       $stmt = $pdo->prepare('INSERT INTO projects 
             (group_id, project_name) 
             VALUES (:id, :name)'); 
       $stmt->execute(array(
          ':id'=>$id, 
          ':name'=>$name 
          )); 

謝謝。

+1

**「不起作用」是什麼意思?**「不起作用」是我們理解問題的不充分描述。當你嘗試時發生了什麼?你得到不正確的結果了嗎?你有沒有得到結果?如果結果不正確,是什麼使它們不正確?你想要什麼呢?你有沒有得到任何正確的結果?如果是這樣,他們是什麼?不要讓我們猜測。 –

+0

我看不到輸出,因爲我的代碼在一個沒有輸出錯誤的地方,否則我會給他們的。 – Laurent

+0

你的網絡服務器有錯誤日誌,對吧?這就是錯誤可能發生的地方。 –

回答

1

您的連接變量是$conn並且您正在使用$pdo->prepare準備您的PDO聲明。

更改爲$conn->prepare()

$stmt = $conn->prepare('INSERT INTO projects 
     (group_id, project_name) 
     VALUES (:id, :name)'); 
+1

哦,我可以很容易地看到我自己......愚蠢的我...... – Laurent

1

你初始化變量稱爲$conn但過一會兒再打,這不是任何地方提到$pdo數據庫連接。這是我首先要做的第一件事。