Squelette SPIP du formulaire d'inscription à Wanewsletter - commentaires Squelette SPIP du formulaire d'inscription à Wanewsletter 2007-05-05T09:50:29Z https://contrib.spip.net/Squelette-SPIP-du-formulaire-d#comment393578 2007-05-05T09:50:29Z <p>trouvé sur le net :<br class="autobr"> e ne sais pas vraimetn te dire<small class="fine d-inline"> </small>; je crois qu'il y a un champ <br class="autobr"> Wanewsletter qui porte le même nom qu'un champ que Spip utilise et qu'il <br class="autobr"> interdit sur tous les formulaires qu'il ne génère pas lui-même.</p> <p>Bref, voici comment mon stagiaire (qui vient de finir son stage) a <br class="autobr"> résolu le problème. Pour mes prochains sites spipés, j'utiliserai <br class="autobr"> SpipListes mais je ne suis pas certain qu'il gère bien les retours <br class="autobr"> d'erreur (e-mails inscrits qui n'existent plus, boîtes pleines même <br class="autobr"> après 3 envois etc.)</p> <p>A noter : avec cette technique, je n'affiche pas le message de <br class="autobr"> Wanewsletter dans la page depuis laquelle on s'ets inscrit. C'est <br class="autobr"> dommage mais à cause de l'URL-rewriting je ne peux pas faire autrement.</p> <p>Concrètement : l'internaute va entrer son adresse e-mail dans ton <br class="autobr"> formulaire et cliquer OK. Les données (son adresse e-mail, le format <br class="autobr"> choisi et l'identifiant de la liste) seront alors envoyés à une deuxième <br class="autobr"> page que l'internaute n'aura pas le temps de voir car elle enregistrera <br class="autobr"> les données dans la base Wanewsletter en une fraction de seconde avant <br class="autobr"> de rediriger vers la page de confirmation en envoyant à celle-ci le <br class="autobr"> message de Wanewsletter.</p> <p>1) ton squelette Spip comprenant le formulaire d'inscription ne doit <br class="autobr"> plus comprendre de PHP du tout<small class="fine d-inline"> </small>!<br class="autobr"> Tu dois en supprimer le code qui ressemble à ça :</p> <pre><code style="color:#000000;"><span style="color:#0000BB;"><?php define</span><span style="color:#007700;">(</span><span style="color:#DD0000;">'IN_SUBSCRIBE'</span><span style="color:#007700;">, </span><span style="color:#0000BB;">true</span><span style="color:#007700;">); </span><span style="color:#0000BB;">$waroot </span><span style="color:#007700;">= </span><span style="color:#DD0000;">'../wanewsletter/'</span><span style="color:#007700;">; include(</span><span style="color:#0000BB;">$waroot </span><span style="color:#007700;">. </span><span style="color:#DD0000;">'newsletter.php'</span><span style="color:#007700;">); </span><span style="color:#0000BB;">?></span></code></pre> <p>2) ce même formulaire d'inscription doit dorénavant envoyer sur une page <br class="autobr"> qui n'est en aucun cas construite par Spip. Dans mon cas :</p> <form id="formnl" method="post" action="inscription-newsletter.php"> J'ai donc créé une page appelée inscription-newsletter.php que j'ai placée à la racine de mon répertoire contenant mon site Spip. (si tu n'as pas placé Spip dans un répertoire de ton site, cette nouvelle page doit donc elle aussi être à la racine de ton hébergement) <p>3) avec les deux étapes précédentes, le formulaire est prêt. <br class="autobr"> Occupons-nous de cette deuxième page : inscription-newsletter.php<br class="autobr"> C'est l'adresse absolue de cette page que tu dois donner à Wanewsletter <br class="autobr"> dans la configuration des listes comme étant l'adresse du formulaire <br class="autobr"> d'inscription.<br class="autobr"> Cette page inscription-newsletter.php contient en tout et pour tout le <br class="autobr"> code suivant :</p> <pre><code style="color:#000000;"><span style="color:#0000BB;"><?php define</span><span style="color:#007700;">(</span><span style="color:#DD0000;">'IN_SUBSCRIBE'</span><span style="color:#007700;">, </span><span style="color:#0000BB;">true</span><span style="color:#007700;">); </span><span style="color:#0000BB;">$waroot </span><span style="color:#007700;">= </span><span style="color:#DD0000;">'../wanewsletter/'</span><span style="color:#007700;">; include(</span><span style="color:#0000BB;">$waroot </span><span style="color:#007700;">. </span><span style="color:#DD0000;">'newsletter.php'</span><span style="color:#007700;">); </span><span style="color:#0000BB;">header</span><span style="color:#007700;">(</span><span style="color:#DD0000;">'location: /actu/spip.php?page=inscription-newsletter&message='</span><span style="color:#007700;">.</span><span style="color:#0000BB;">urlencode</span><span style="color:#007700;">(</span><span style="color:#0000BB;">$message</span><span style="color:#007700;">)); </span><span style="color:#0000BB;">?></span></code></pre> <p>Tu dois adapter les deux données suivantes : <br>- ../wanewsletter/ : cela dépend de l'emplacement de wanewsletter par <br class="autobr"> rapport à la page inscription-newsletter.php <br>- /actu/spip.php<small class="fine d-inline"> </small>?page=inscription-newsletter : tu peux nommer ton <br class="autobr"> squelette différemment : il s'agit là de la 3<sup class="typo_exposants">e</sup> page qui intervient <br class="autobr"> ici, celle sur laquelle l'internaute verra le message de Wanewsletter <br class="autobr"> lui confirmant par exemple son inscription. Mais attention : il faut <br class="autobr"> bien laisser &message= à la fin de cette adresse pour que le message de <br class="autobr"> Wanewsletter arrive à destination.<br class="autobr"> L'internaute ne verra même pas cette page inscription-newsletter.php<small class="fine d-inline"> </small>; <br class="autobr"> il aura l'impression d'être passé directement de ton formulaire <br class="autobr"> d'inscription à la page spip.php<small class="fine d-inline"> </small>?page=inscription-newsletter.</p> <p>4) voici maintenant la 3<sup class="typo_exposants">e</sup> page qui intervient dans cette histoire : <br class="autobr"> spip.php<small class="fine d-inline"> </small>?page=inscription-newsletter.<br class="autobr"> Cette page peut être en tout point identique au reste du site.<br class="autobr"> Elle doit au moins contenir :</p> <pre><code style="color:#000000;"><span style="color:#0000BB;"><?php </span><span style="color:#007700;">if (isset(</span><span style="color:#0000BB;">$_GET</span><span style="color:#007700;">[</span><span style="color:#DD0000;">'message'</span><span style="color:#007700;">])) echo </span><span style="color:#0000BB;">utf8_encode</span><span style="color:#007700;">(</span><span style="color:#0000BB;">$_GET</span><span style="color:#007700;">[</span><span style="color:#DD0000;">'message'</span><span style="color:#007700;">]); </span><span style="color:#0000BB;">?></span></code></pre> <p>C'est ce qui affiche le message de Wanewsletter. Tu peux donc placer <br class="autobr"> cela dans un bloc de ton choix pour la mise en forme.</p> <p>Je n'ai peut-être pas été clair. N'hésite pas à répondre en mettant ma <br class="autobr"> propre adresse en copie pour que je sois au courant de ton message.</p> <p>olivier</p></form> Squelette SPIP du formulaire d'inscription à Wanewsletter 2007-04-04T16:32:29Z https://contrib.spip.net/Squelette-SPIP-du-formulaire-d#comment392691 2007-04-04T16:32:29Z <p>Hello,</p> <p>Inutile. Ne réussis même pas à uploader tous les fichiers sur le serveur de mon site... config.inc.php du répertoire includes... jugé trop volumineux...! Ce qui est bizarre c'est que ce fichier fait 0 k<small class="fine d-inline"> </small>!</p> <p>Dommage, une newsletter m'est nécessaire. Suis étonné qu'il n'existe pas une formule spip ad hoc..</p> <p>À +</p> Squelette SPIP du formulaire d'inscription à Wanewsletter 2007-04-04T16:05:28Z https://contrib.spip.net/Squelette-SPIP-du-formulaire-d#comment392690 2007-04-04T16:05:28Z <p>hello,</p> <p>- Je comptais installer le script Wanewsletter sur mon site spip 1.92, mais en lisant ce forum, j'hésite. Ne suis pas un as... de l'informatique. Vais essayer... Si ça marche, c'est qu'il faut réinstaller Wanewsletter en cas de migration, etc...</p> <p>- Je me demandais si certains fichiers du script ne font pas double emploi avec des fichiers du module Spip... (risque d'effacement de fichiers..) Certains répertoires portent le même nom... (tmp).. Mais non... Pas de fichiers index dans le répertoire tmp du module Spip par exemple... Le répertoire image ne porte pas le même étiquette dans le module spip et dans le script Wanewsletter...</p> <p>A toute,</p> Squelette SPIP du formulaire d'inscription à Wanewsletter 2007-03-25T19:32:23Z https://contrib.spip.net/Squelette-SPIP-du-formulaire-d#comment392405 2007-03-25T19:32:23Z <p>J'ai migré mon site de SPIP 1.8.4 en 1.9.1<small class="fine d-inline"> </small>; depuis, le formulaire d'inscription à WAnewsletter ne fonctionne plus : <br>- en tentant une inscription, j'ai une page blanche avec un simple texte « Rien à faire ici » (au format texte brut). <br>- en tentant une désinscription, c'est une page d'erreur ayant une mise en forme et disant « Erreur... Fichier action/desinscription introuvable ».</p> <p>Je dois avouer que je suis sec...<br class="manualbr">Quelqu'un saurait-il m'aider<small class="fine d-inline"> </small>?<br class="manualbr">Merci d'avance.</p> <p>Mitch</p> Squelette SPIP du formulaire d'inscription à Wanewsletter 2006-10-11T17:20:07Z https://contrib.spip.net/Squelette-SPIP-du-formulaire-d#comment388011 2006-10-11T17:20:07Z <p>Bonjour<small class="fine d-inline"> </small>! Je suis nase en informatique. Comment récupère-t-on les emails récoltés avec ce script<small class="fine d-inline"> </small>? MERCI<small class="fine d-inline"> </small>! dictionaric.com</p> <form method="post" action=""> Adresse email : <input type="text" name="email" maxlength="100"> Format : <select name="format"> <option value="1">TXT</option> <option value="2">HTML</option> </select> <input type="hidden" name="liste" value="3"> <br> <input type="radio" name="action" value="inscription" checked> Inscription <br> <input type="radio" name="action" value="setformat"> Changer de format <br> <input type="radio" name="action" value="desinscription"> Désinscription <br> <input type="submit" name="wanewsletter" value="Valider"> </form>