Raschen
@Raschen

Проверка существующей записи в mysql средствами php?

Задача такая просканировать директорию с файлами на наличие *.zip допустим получили результат
files
  1.zip
  2.zip
  3.zip
  ...
  ...
  183.zip

после проверяем в mysql есть ли запись 1.zip в таблице file_name если нету добавляем если есть то переходим к проверке следующего файла

Cо сканирование вроде разобрался
$dir = "/home/main/files";
$list = scandir($dir);

foreach ($list as $item) 
{
	echo "$item" . PHP_EOL;
}


вот что у меня получилось данные добавляются только нет проверки на существующие записи
$dir = "/home/main/files";
$list = scandir($dir);

foreach ($list as $item) 
{
	$connect->query("INSERT INTO `cloud` (`id`, `file_name`, `date`) VALUES (NULL, '$item', NULL)");
	echo "$item" . PHP_EOL;
}
  • Вопрос задан
  • 69 просмотров
Пригласить эксперта
Ответы на вопрос 3
webinar
@webinar
Учим yii2: https://youtu.be/-WRMlGHLgRg
Проверку лучше делать или запросом count или вообще сделать 1 запрос, выбрать все и проверять в php in_array(), что бы не лазить в базу каждый раз. Но зависит от кол-ва записей в базе.
Ответ написан
Raschen
@Raschen
А можно пример желательно попроще как это делается чтобы логику понять как это все работает
Записей небольшие 2000
Ответ написан
AK-VoronM
@AK-VoronM
"Мало-мало программист"
Добрый день. Если имя файла уникальное - нужно сделать его индексом. Тогда можно будет использовать INSERT IGNORE. Эта конструкция вставит запись только если ключ уникален, если нет - ничего не сделает. Ссылка на документацию.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Badoo Development Москва
от 140 000 до 180 000 руб.
Badoo Development Москва
от 180 000 до 250 000 руб.
23 июля 2018, в 20:01
3000 руб./за проект
23 июля 2018, в 19:52
10000 руб./за проект