2015-10-20 41 views
0

我從文件插入數據到我的數據庫:如何將一批數據添加到mySQL中的一批數據中?

$sql = "INSERT INTO people (id,name,item1) values(?,?,?) "; 
    $q = $pdo->prepare($sql); 

    foreach($data as $row) { 
     $q->execute(array($id, $row['name'], $row['item']); 
    } 

結果看起來是這樣的:

╔═════╦═══════╦═════════╦═════════╗ 
║ id ║ name ║ item1 ║ item2 ║ 
╠═════╬═══════╬═════════╬═════════╣ 
║ 12 ║ fred ║ 24C8EI ║   ║ 
║ 12 ║ alan ║ 767CG5 ║   ║ 
║ 12 ║ tom ║ 382F74 ║   ║ 
╚═════╩═══════╩═════════╩═════════╝ 

直到這一步,一切工作正常。

現在我想用文件副本的數據更新我的數據庫(檢查副本是否有相同的內容,如果它相同,我想比較後面的item1和item2)。我的嘗試不工作:

$sql = "UPDATE people SET item2 = ? WHERE id = 12"; 
$q = $pdo->prepare($sql); 
foreach($data as $row) { 
    $q->execute(array($row['item'], $id)); 
} 

我想我有一些合乎邏輯的問題。我希望我解釋得足夠了解我想達到的目標。

回答

0

從query.Because刪除id = 12;你傳遞兩個參數在執行語句

這將是

$id=12;// initlize you id 
$sql = "UPDATE people SET item2 = ? WHERE id = ?"; 
$q = $pdo->prepare($sql); 
foreach($data as $row) { 
    $q->execute(array($row['item'], $id)); 
} 
+0

你好,謝謝你,我想就像你說的,但它仍然沒有工作 – Jarla

+0

你面臨什麼問題?你有什麼錯誤? – Saty

+0

你好,我的結果是一個白色的空白頁面。 – Jarla

相關問題