Bonjour à tous,

Mon problème actuel concerne la gestion de l'envoi de newsletter dont le contenu de chacune est enregistré dans une base avec un idN comme index.

Pour gérer l'envoi j'utilise 3 tables

une qui contient les html des news, un autre les emails à utiliser et la dernière la liste des emails déjà envoyés pour chaque idN


Mon url d'appel est envoi_newsletter.php?idN=9&envoi=ok pour la newsletter 9



J'ai donc trois tables :


1 - la table dans laquelle j'enregistre mes html pour les news :
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
CREATE TABLE `0_news` (
  `idN` int(11) NOT NULL,
  `news_titre` varchar(255) CHARACTER SET utf8 NOT NULL,
  `news_text` longtext CHARACTER SET utf8 NOT NULL,
  `news_date` varchar(255) COLLATE utf8_bin NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;


2 - qui liste tous mes emails

Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
CREATE TABLE `0_liste_emails` (
  `user_id` int(11) UNSIGNED NOT NULL,
  `email` varchar(255) COLLATE utf8_bin NOT NULL,
  `email2` varchar(255) COLLATE utf8_bin NOT NULL,
  `email3` varchar(255) COLLATE utf8_bin NOT NULL,
  `email4` varchar(255) COLLATE utf8_bin NOT NULL,
  `mailingok` int(1) NOT NULL DEFAULT 1,
  `supp` int(1) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;


3 - qui permet de lister les newsletters envoyées aux divers emails

Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
CREATE TABLE `0_liste_envoi` (
  `idE` int(11) NOT NULL,
  `user_id` int(11) NOT NULL,
  `email` varchar(255) COLLATE utf8_bin NOT NULL,
  `date_envoi` varchar(11) COLLATE utf8_bin NOT NULL,
  `date_lu` varchar(11) COLLATE utf8_bin NOT NULL,
  `date_lu_2` varchar(11) COLLATE utf8_bin NOT NULL,
  `date_lu_3` varchar(11) COLLATE utf8_bin NOT NULL,
  `ip` varchar(100) COLLATE utf8_bin NOT NULL,
  `idN` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;


Le problème est le suivant, je ne peux envoyer que des paquets de 100 emails (je garde une marge) via les relais d'OVH / heure.

Donc je dois pouvoir comparer ceux déjà envoyés pour un idN donné donc enregistrés dans la table 0_liste_envoi avec la table 0_liste_emails ou se trouve tous les emails et si j'ai un retour vide, je dois sélectionner ceux qui ne sont pas enregistrés et je galère dans l'ecriture du script.

Merci pour toute votre aide possible