2011-02-03 35 views
0

在我的腳本開始處,我刪除了表中的所有內容。當運行下面的代碼時,它會迭代3次(每個記錄一次),但是當我檢查數據後,信息被複制(6次插入而不是3次)。PHP:使用SQLite時獲取重複插入

foreach ($response2->records as $record) {  

    $accountid = $record->fields->AccountId; 
    $resident_title = $record->fields->Resident_Title__c; 
    $supervisor_title = $record->fields->Supervisor_Title__c; 
    $position_proposal_url = $record->fields->Position_Proposal_URL__c; 

    $sql = "INSERT INTO Positions (AccountID, Position_Title, Supervisor_Title, Position_Url) 
    VALUES ('$accountid', 
    '$resident_title', 
    '$supervisor_title', 
    '$position_proposal_url');"; 

    $result2 = $database->exec($sql); 
    } 

我已插入的打印命令的最後一行之前確定SQL的內容和可視化,它實際上只是通過3次循環。所以基於此我懷疑這個問題必須與我的PHP/SQL語法。

+0

你試過了一個`print_r($ response2);`(而不是foreach)來查看是否有,實際上是3條記錄還是6條? – Rudu 2011-02-03 20:03:19

回答

0

你有CSS或內聯風格有一個空的後臺網址?

使用Firefox/Firebug或類似的東西啓動您的頁面,這將允許您捕獲所有http流量 - 這很可能是您的頁面被擊中兩次。

+0

聽起來像一個有趣的地方去探索。我應該利用Firebug中的哪個區域以及我應該尋找哪些類型的東西? – 2011-02-03 19:03:18

0

我很確定你的數據庫不應該允許重複的行。解決這個問題,並嘗試插入重複鍵應該會導致一個錯誤,你可以按照。