У меня проблема с запросом в php-файле. У меня есть запрос, который извлекает адрес электронной почты, он работает правильно, но когда он отправляет письмо, адрес добавляется дважды.
ВЫБЕРИТЕ электронную почту ОТ jos_users, ГДЕ id = $ i
$ i это число Это автоматически увеличивается.
У меня есть для
, чтобы проверить каждый идентификатор пользователя, чтобы увидеть, следует ли отправлять электронное письмо.
Есть идеи?
спасибо, Себастьян
Если ваш список идентификаторов не слишком длинный, вы можете использовать что-то вроде этого:
SELECT DISTINCT email FROM jos_users WHERE id IN (5, 18, 24, ...);
Если вы получаете пакет слишком длинный , вы можете либо ] увеличьте размер пакета , используйте временную таблицу или отслеживайте электронные письма в вашем приложении PHP. Вот пример использования временных таблиц:
CREATE TEMPORARY TABLE tmp (id INT);
/* insert first 50 values (or 100, or 1000, whichever fits into your packet size)*/
INSERT INTO tmp (id) VALUES (5), (18), (24) ...;
/* insert next 50 values */
INSERT INTO tmp (id) VALUES (105), (118), (124) ...;
/* more inserts until you have a temporary table containing all ids */
INSERT INTO tmp ...
INSERT INTO tmp ...
/* select */
SELECT DISTINCT email FROM jos_users INNER JOIN tmp USING (id);