我目前遇到的问题是,如果我运行这个php更多,那么一旦我当前在数据库中的图像数据将复制。例如,我上传了5张图片到我的上传文件,然后点击了脚本,一切都很好。当我添加另一个图像并再次单击该脚本时,我从我的数据库中的6个图像变为11.我想知道如何修改我的代码以便我可以解决这个问题。
include('mysql.php');
if ($handle = opendir('images')) {
/* This is the correct way to loop over the directory. */
while (false !== ($file = readdir($handle))) {
if($file!='.' && $file!='..') {
$images[] = "('".$file."')";
}
}
closedir($handle);
}
/* insert new record into the table images with the filename */
$query = "INSERT INTO images (filename) VALUES ".implode(',', $images)." ";
if (!mysql_query($query)) {
print mysql_error();
}
else {
print "finished installing your images!";
}
答案 0 :(得分:4)
您可以将“文件名”列设为唯一键并使用INSERT IGNORE
。
有关插入忽略的更多信息:http://dev.mysql.com/doc/refman/5.5/en/insert.html