CSV ファイルを MySQL に毎日アップロードするスクリプトがあり、更新を受け取ります。しかし、私がインポートしていて、同僚が私がインポートしていないと思って再度インポートしたとしましょう。しかし、データが既に存在するため、インポートした行を MySQl にスキップさせたいと思います。試しIGNORE
てみREPLACE
ましたが、必要な結果が得られません。
if ($_FILES[csv][size] > 0) {
$file = $_FILES[csv][tmp_name];
$handle = fopen($file,"r");
do {
if ($data[0]) {
mysql_query("INSERT IGNORE INTO cdl_genesys_login (EMP_ID, NAME, MANAGER, TYPE, START_TIME, END_TIME, TIMEZONE, DURATION, STATE, REASON_KEY, DATE) VALUES
(
'".addslashes($data[0])."',
'".addslashes($data[1])."',
'".addslashes($data[2])."',
'".addslashes($data[3])."',
'".addslashes($data[4])."',
'".addslashes($data[5])."',
'".addslashes($data[6])."',
'".addslashes($data[7])."',
'".addslashes($data[8])."',
'".addslashes($data[9])."',
'".addslashes($data[10])."'
)
") OR die (mysql_error());
}
} while ($data = fgetcsv($handle,1000,",","\""));
header('Location: import_.php?success=1'); die;
}