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;
}
  • Вопрос задан
  • 260 просмотров
Пригласить эксперта
Ответы на вопрос 3
webinar
@webinar Куратор тега PHP
Учим yii: https://youtu.be/-WRMlGHLgRg
Проверку лучше делать или запросом count или вообще сделать 1 запрос, выбрать все и проверять в php in_array(), что бы не лазить в базу каждый раз. Но зависит от кол-ва записей в базе.
Ответ написан
Комментировать
Raschen
@Raschen Автор вопроса
А можно пример желательно попроще как это делается чтобы логику понять как это все работает
Записей небольшие 2000
Ответ написан
Комментировать
AK-VoronM
@AK-VoronM
"Мало-мало программист"
Добрый день. Если имя файла уникальное - нужно сделать его индексом. Тогда можно будет использовать INSERT IGNORE. Эта конструкция вставит запись только если ключ уникален, если нет - ничего не сделает. Ссылка на документацию.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
Бюро Цифровых Технологий Санкт-Петербург
от 120 000 до 180 000 ₽
02 мая 2024, в 23:29
1500 руб./в час
02 мая 2024, в 23:16
7500 руб./за проект
15 апр. 2024, в 22:14
30000 руб./за проект