PhpMyNewsLetter 2.0

Support et annonces PhpMyNewsLetter.

Vous n'êtes pas identifié(e).

Annonce

Pour me permettre de mieux vous aider au mieux, merci d'être le plus précis possible en donnant :
- la version de phpmynewsletter utilisée
- votre hébergement : personnel, dédié, mutualisé
- votre hébergeur (OVH, free, Infomaniak, 1and1,...)
- votre OS : linux, windows
- version de PHP (5.3, 5.6, 7.0, hhvm...)
Toutes les réponses à mes questions qui sont sans retour de votre part seront considérées comme résolues !

#1 06-04-2017 15:59:45

axel584
Membre

Relier la base des abonnées à une base externe

Bonjour,
J'ai actuellement sur mon site une base de données des membres du site. Je voulais savoir quel était la solution la plus simple pour faire interagir phpmynewsletter avec ma base de membres. Sachant que j'aimerai autant que possible intégrer au maximum la gestion de ma news letter au site. C'est à dire qu'un membre du site puisse s'inscrire ou se désinscrire à la news letter avec par exemple une simple case à cocher.
Est-ce qu'il existe des services REST pour gérer tout ça ? Est-ce que d'autres utilisateurs ont eu ce même problème ?

Merci beaucoup,

Axel

Hors ligne

#2 06-04-2017 20:41:52

Arnaud
Administrateur

Re : Relier la base des abonnées à une base externe

Bonjour Axel, et bienvenue sur le forum !

Je m'étonnais un peu de la question, car typique d'un développeur.
En conséquence ma réponse :
- tout d'abord, je le rappelle, il y a un formulaire pour adhérer directement à une newsletter, que l'on peut intégrer à un portail.
Mais ce n'est pas ton cas.
Intégrer PhpMyNewsLetter en l'état, ce n'est pas possible, ça c'est clair.

La solution : 
- tu installes Phpmynewsletter normalement sur ton espace web (ou dédié). Et s'il te plait, pas de sous domaine, ça demande trop de manipulation dans le code (et en sous dossier ça ne dérange en rien ! Bien au contraire, tu auras toutes tes propres fonctions et classes directement disponibles dans le path de ton htdocs).
Tu crées dans l'interface de phpmynewsletter une liste de test, appelée "liste tests" par exemple, et une autre liste "liste réelle membres portail" par exemple. Tu relèves le numéro de création de cette dernière liste.
Dans la liste test, tu ajouteras des mails que tu vas te créer chez free, la poste, hotmail, gmail tu as, yahoo et autres que tu choisiras (c'est pour être sur que ta newsletter arrive bien partout et correctement !)

Pseudo analyse :
- tu reprends ton formulaire d'adéhsion des membres, tu ajoutes ta case "recevoir la newsletter".
- dans ton script de traitement de l'inscription, tu traites ce check ou non check.
- si check, tu fais juste un insert dans la table des emails avec le numéro de la liste réelle que tu as relevé précédemment, et tu fais ça :

function unique_id($x='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ') {
    $clen = strlen($x);
    $randomString = '';
    for ($i = 0; $i < $clen; $i++) {
        $randomString .= $x[rand(0, $clen - 1)];
    }
    mt_srand((double) microtime() * 1000000);
    return md5(mt_rand(0, 9999999).$randomString);
}
$hash = unique_id($add_addr);
if($cnx->query("INSERT INTO ".$table_email." (`email`, `list_id`, `hash`) 
     VALUES ('".($cnx->CleanInput($add_addr))."', '".($cnx->CleanInput($list_id))."', '".($cnx->CleanInput($hash))."')")){
    return true;
} 

Tu remplaces le CleanInput par ta méthode de nettoyage des données injectées, tu ajoutes la fonction unique_id à ta liste des fonctions de tes pages, et tu passes ta requête.
C'est tout !
Evidemment, c'est du quasi pseudo code à adapter, mais je suis sûr que tu as compris le déroulement.
Après, tu pourras utiliser pmnl et envoyer des mails tranquillement.

Tu me tiens au courant ?

Arnaud

PS : non, pas d'api REST, inutile pour le moment et à ce stade du développement.


Je prends le temps de créer un outil pour tous, de niveau professionnel, mais simple !
Il n'est pas encore parfait, soyez indulgents, ça vient...
Si vous avez des questions, n'hésitez pas ! Mais soyez précis pour une réponse plus rapide  wink

Hors ligne

#3 07-04-2017 10:46:09

axel584
Membre

Re : Relier la base des abonnées à une base externe

ça me semble nickel :-)

ça fait plaisir de voir qu'on parle le même langage ;-)

Je te tiens au courant.

Axel

Hors ligne

#4 07-04-2017 10:54:28

Arnaud
Administrateur

Re : Relier la base des abonnées à une base externe

Bonjour Axel (le prénom de mon fils qui a presque 3 mois  ops  ops )

Tiens moi au courant STP, car si ça fonctionne (ce dont je ne doute pas), il pourrait être intéressant de proposer ce code dans l'interface pour généraliser le process...

Merci d'avance,

Arnaud


Je prends le temps de créer un outil pour tous, de niveau professionnel, mais simple !
Il n'est pas encore parfait, soyez indulgents, ça vient...
Si vous avez des questions, n'hésitez pas ! Mais soyez précis pour une réponse plus rapide  wink

Hors ligne

Pied de page des forums

Propulsé par FluxBB