これにより、csvの各行がデータベースに2回挿入され、現在は3回挿入されています。私がループに入れた他のことは、本来あるべき以上に起こりません。
$file_handle = fopen("uploads/numbers.csv", "r");
$stmt = $db->prepare("INSERT INTO database
(firstname,lastname,phonenumber) VALUES
(:field1,:field2,:field3)");
while (($line_of_data = fgetcsv($file_handle, 1000, ",")) !== FALSE)
{
$stmt->execute(array(':field1' => $line_of_data [0], ':field2' => $line_of_data[1], ':field3' => $line_of_data[2]));
}
データベースに適切な主キーを設定します。使用法に応じて、(名、姓)または(名、姓、電話番号)のいずれか。タダ、これ以上の重複はありません。
CSVにデータベース内の既存のデータが含まれているという事実から、Jamesが列に正しかったと仮定しますが、いずれにしても、主キーによって重複が防止されます。
名、姓のキーを使用していて、スクリプトで電話番号を更新できるようにする場合は、INSERTの代わりにREPLACEを使用できます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加