AccueilAideRechercherIdentifiez-vousInscrivez-vous

Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.
Avez-vous perdu votre courriel d'activation?
23 Mai 2012 à 04:42:53

Connexion avec identifiant, mot de passe et durée de la session
Rechercher
    avancée

News

Stats
8763 Messages dans 1087 Fils de discussion par 1002 Membres
Dernier membre: emilie
+  PHP Astux
|-+  NewsletTux v. 2
| |-+  NewsletTux 2 fr (fin du support)
| | |-+  Avoir 2 formulaires simplifiés ? 1 par newsletter ?
Pages: [1] 2 3 4   Bas de page
Imprimer
Auteur Fil de discussion: Avoir 2 formulaires simplifiés ? 1 par newsletter ?  (Lu 28834 fois)
Jefferson
Néophyte
*
Messages: 47


« le: 23 Avril 2008 à 19:30:30 »

Bonjour,

Tout d'abord un grand bravo à Matthieu pour son travail sur Newslettux v2, je viens de l'installer en ayant totalement supprimé la v1 pour repartir de zéro (après avoir exporté les inscrits à mes newsletters) et je suis largement satisfait du résultat à quelque chose près…

Voici ma situation:
J'ai 2 newsletters: une en français et une en anglais (soit dit en passant sous la v2 plus besoin d'installer 2 fois newslettux et ça c'est bien cool ;-))

Je souhaiterais incorporer un "formulaire simplifié" à mon site pour que les gens s'abonnent à ma newsletter, seulement avec le système de formulaire simplifié par défaut ils s'abonnent aux 2 newsletters (anglaise et française) d'un coup.  Triste

En fait il me faudrait un formulaire simplifié pour s'inscrire à la newsletter française que je collerais dans la partie française de mon site, et un formulaire simplifié pour s'abonner à la newsletter anglaise que j'insérerais  dans la partie anglaise…

J'ai lu un semblant de réponse sur cette page mais je n'ai pas bien compris l'histoire de :
Citation
tf1.fr/newslettux2/form-newslettux.php?newsletter=M6
Comment savoir ce qu'il faut mettre après "newsletter=" ?

Merci d'avance pour vos réponses.
Journalisée
Matthieu
Administrateur
Membre Héroïque
*
Sexe: Homme
Messages: 3461


Unreal Power...


WWW
« Répondre #1 le: 24 Avril 2008 à 13:13:42 »

Tiens, Jefferson, salut Sourire
(ça me fait penser que j'ai pas encore uploadé ma trad' anglaise du script, shame on me)  Embarrassé

en fait, il va effectivement falloir modifier ce fichier, et tu peux le faire sans passer par l'autre topic.

Voici ce que je te propose. Tu crées une page (.php) qui va inclure form-newslettux.php : appelons-la inscriptions.php
cette page aura les 2 inscriptions (FR + EN)

Je suppose que la newsletter FR a pour ID de profil 1 et l'anglaise 2.

dans cette page, tu mets ce code source pour inclure le formulaire français :
<?php include('newslettux2/form-newslettux.php?regnl=1'); ?>

puis qq lignes plus loin (où tu veux, en fait  Sourire) tu inclues l'anglaise :
<?php include('newslettux2/form-newslettux.php?regnl=2'); ?>

Dans la config du script, tu mets le formulaire simplifié qui pointe vers l'un ou l'autre profil (peu importe, on de toutes façons va écraser l'ID) avec l'URL de gestion des abonnements qui, elle, doit pointer vers la bonne page.

Maintenant modifions le fichier form-newslettux.php :
remplace env. ligne 280 :
Code:
// retrieve default registrations and write them in $array_regs
$array_default_regs = explode(";",DEF_REG_FORMVAL); // [$pid]|$format     [$pid2]|$format2 ...

par :
Code:
// retrieve default registrations and write them in $array_regs
$regnl = (isset($_GET['regnl'])) ? abs(intval($_GET['regnl'])) : 1;
$array_default_regs = array($regnl .'|'. 'html'); // text or html
(en spécifiant le type : "text" ou "html" en dernier paramètre)


et là c'est fini à 90% : chaque champ sera indépendant, les inscriptions fonctionnent pour chacun indépendamment.

L'idéal maintenant est de prévoir la désinscription facilitée (quand même !)
Je vais me pencher dessus pour la vesdion 2.10 : je le rajoute dans la liste. ça sera plus facile pour toi, ça pourra servir à d'autres et ça t'évitera de te retaper ce code à chaque mise à jour.
Journalisée

Jefferson
Néophyte
*
Messages: 47


« Répondre #2 le: 25 Avril 2008 à 02:34:34 »

Merci pour cette réponse ultra rapide Sourire, j'ai passé plusieurs heures le nez dans le code et ça ne fonctionne toujours pas. Ind&eacute;ci

J'ai les erreurs suivantes:
Code:
Warning: main(../newsletter/form-newslettux.php?regnl=1) [function.main]: failed to open stream: No such file or directory in /mnt/133/sdb/8/3/monsite/fr/accueil/inscriptions.php on line 11

Warning: main() [function.include]: Failed opening '../newsletter/form-newslettux.php?regnl=1' for inclusion (include_path='/mnt/133/sdb/8/3/monsite/include:.:/usr/php4/lib/php') in /mnt/133/sdb/8/3/monsite/fr/accueil/inscriptions.php on line 11
et
Code:
Warning: main(../newsletter/form-newslettux.php?regnl=2) [function.main]: failed to open stream: No such file or directory in /mnt/133/sdb/8/3/monsite/eng/home/inscriptions.php on line 11

Warning: main() [function.include]: Failed opening '../newsletter/form-newslettux.php?regnl=2' for inclusion (include_path='/mnt/133/sdb/8/3/monsite/include:.:/usr/php4/lib/php') in /mnt/133/sdb/8/3/monsite/eng/home/inscriptions.php on line 11

La ligne 11 en question c'est celle où j'ai mis:
 <?php include('../newsletter/form-newslettux.php?regnl=1'); ?>
   ou
 <?php include('../newsletter/form-newslettux.php?regnl=2'); ?>

Au début je pensais que c'était un problème de chemins au niveau de form-newslettux.php (NTUX2_ROOT) ou dans inscriptions.php mais après un tas de tests le problème revient toujours. De plus, en enlevant le ?regnl=1 ou ?regnl=2 j'ai la boîte d'inscription qui s'affiche parfaitement (mais qui n'enregistre pas les mails bizarrement).

Finalement je me suis rappelé que j'avais déjà eu un problème de chemins relatifs avec la v1 que j'avais résolu en utilisant des liens absolus… Et je crois avoir compris (2 ans après :-/) d'où peut venir le problème sans savoir comment le résoudre malheureusement…

En fait ça vient sans doute du fait que j'ai ma page inscriptions.php (qui contient le php include de form-newslettux.php) qui est chargée via un autre php include puisque je la charge depuis un fichier index.php dans lequel il y a:
case 'newsletter': include ('accueil/inscriptions.php');break;
(Et dans le fichier index.php de la version anglaise: case 'newsletter': include ('home/inscriptions.php');break; )

Le fichier index.php me sert à charger toutes mes pages dans la partie centrale de mon site web uniquement en gardant mon top, footer, menu, etc. donc à chaque chargement de page y'a juste le milieu qui change le reste ne se recharge pas.

Les fichiers index.php, form-newslettux.php, et inscriptions.php se trouvent à 3 endroits différents et c'est ça qui doit créer des bugs. Par exemple j'ai remarqué que quand je charge form-newslettux.php (et non pas form-newslettux.php?regnl=2) dans mon fichier inscriptions.php auquel j'accède (lui-même) via http://monsite.com/eng/index.php?page=newsletter j'ai la boîte d'inscription qui s'affiche mais qui ne prend pas en compte l'inscription (comme j'ai dit plus haut) et bizarrement quand j'accède directement à mon fichier http://monsite.com/eng/home/newsletter.php j'ai l'erreur "Failed opening for inclusion" à la ligne 11 (comme dit aussi plus haut).

À noter également qu'en testant d'enregistrer des mails directement via les adresses:
http://monsite.com/newsletter/form-newslettux.php
ou
http://monsite.com/newsletter/form-newslettux.php?regnl=1
ou
http://monsite.com/newsletter/form-newslettux.php?regnl=2
Ça fonctionne mais à chaque fois ça crée des abonnements à la newsletter française uniquement…

Donc le bug ne vient peut-être pas de Newslettux mais de mon site, je ne sais pas mais dans tous les cas je suis perdu.

Désolé si j'ai mal expliqué la situation ou si je me suis répété, il est 3h30 du mat et j'ai le cerveau qui fume. Choqu&eacute;  Je relirais demain et je tenterais de mettre tout en absolu pour voir…

À demain (ou à tout à l'heure),

Jefferson

PS: j'ai oublié de dire que dans mes multiples tests j'ai tenté de mettre l'include form-newslettux.php directement dans mon fichier index.php (et donc du coup je n'ai plus le design que j'ai choisi dans ma page inscriptions.php mais bref…) ça ne m'enregistre pas les mails non plus alors que la case et les boutons radio inscriptions désinscription s'affichent.
Journalisée
Matthieu
Administrateur
Membre Héroïque
*
Sexe: Homme
Messages: 3461


Unreal Power...


WWW
« Répondre #3 le: 25 Avril 2008 à 13:24:09 »

ok, ça peut attendre lundi, que je te donne les modifs que je finis ce WE pour la màj en 2.1.0. ? (pas d'internet ce WE pour moi :/)
Journalisée

Jefferson
Néophyte
*
Messages: 47


« Répondre #4 le: 25 Avril 2008 à 14:53:08 »

Oui pas de problème ça peut attendre lundi c'est déjà super cool que tu répondes si rapidement Cool.
Citation
(pas d'internet ce WE pour moi :/)
C'est un peu la même chose pour moi qui n'ai plus d'ordinateur depuis plusieurs mois et qui en squatte temporairement un qui ne m'appartient pas, ce n'est pas facile pour bosser…

Je te tiendrais au courant des résultats de mes expérimentations en liens absolus aussi.Clin d'oeil Je n'ai pas encore eu le temps de tester.
Journalisée
Jefferson
Néophyte
*
Messages: 47


« Répondre #5 le: 25 Avril 2008 à 21:52:35 »

Pour info en mettant des chemins en absolu j'ai cette erreur:
Code:
Connection file missing - correct relative path or check file correctly named.

Fichier de connexion manquant, vérifiez le chemin relatif et vérifiez que le fichier soit correctement nommé.

(J'ai cette erreur dans tous les formulaires: via index.php?page=newsletter, via inscriptions.php et même en allant directement sur http://monsite.com/newsletter/form-newslettux.php)

J'ai regardé dans la FAQ on y parle de "fichier conn.php manquant dans le dossier SQL" pourtant le fichier est bien présent et bien rempli dans newsletter\sql\conn.php

C'était juste pour te tenir informé, j'attends lundi pour ton aide Clin d'oeil
Journalisée
Andy
Modérateur Global
Membre Senior
*
Sexe: Homme
Messages: 482



« Répondre #6 le: 25 Avril 2008 à 22:33:48 »

Salut,

Ton message d'erreur me fait penser à une erreur en ligne 23 de form-newslettux.php

L'appel à cette page ne semble pas correct.

essaie de remplacer par:

Code:
define("NTUX2_ROOT","./newsletter/");

en admettant que tu as installé NewsletTux dans le dossier newsletter.
« Dernière édition: 25 Avril 2008 à 22:35:29 par Andy » Journalisée

Gros Travaux de restaurations maison durant quelques mois. Accès à internet perturbé durant cette période.
Matthieu
Administrateur
Membre Héroïque
*
Sexe: Homme
Messages: 3461


Unreal Power...


WWW
« Répondre #7 le: 28 Avril 2008 à 11:50:32 »

alors pour les adresses complètes avec paramètre, ça marche ou ça ne marche pas ...  Grima&ccedil;ant l'explication est dans le php.ini selon qu'on autorise un include (ou require) à faire ce type d'inclusion.

Ce we j'ai bien avancé dans la màj 2.1.0 et j'ai la solution qui marche. Il y aura juste 4 lignes de variables à c/c juste avant, j'expliquerai tout ça dans une doc, c'est assez simple à mettre en place (par contre j'en ai perdu qq cheveux Clin d'oeil)
Journalisée

Jefferson
Néophyte
*
Messages: 47


« Répondre #8 le: 29 Avril 2008 à 15:17:46 »

=>Andy:
Oui je sais que ça vient de la ligne 23, j'ai eu ce souci car j'ai tout mis en liens absolus pour réparer mon problème d'include, j'ai testé en gardant en relatif le lien dans form-newslettux.php (avec ../newsletter et non pas ./newsletter Clin d'oeil) je n'ai effectivement plus le message d'erreur, par contre je reviens à mon problème précédent, c'est-à-dire que les mails ne sont pas enregistrés par newslettux quand je passe par:

http://monsite.com/eng/index.php?page=newsletter (qui charge inscriptions.php via include)
http://monsite.com/fr/index.php?page=newsletter (qui charge inscriptions.php via include)
Note: je n'ai pas de message d'erreur ça revient juste à la page d'accueil de mon site.

Ni par:
http://monsite.com/eng/home/inscriptions.php (qui charge form-newslettux.php via include)
http://monsite.com/fr/accueil/inscriptions.php (qui charge form-newslettux.php via include)
Note: je n'ai pas de message d'erreur non plus ça revient juste au formulaire vide.

Mais cela fonctionne quand je passe directement par le répertoire où j'ai newslettux et par:
http://monsite.com/newsletter/form-newslettux.php

=>Matthieu:
Je n'ai pas accès au php.ini (je suis sur un serveur mutualisé) il n'existe pas une parade ?
J'attends tes instructions pour la mise à jour et les lignes à modifier avec impatience Roulement des yeux.
Journalisée
Matthieu
Administrateur
Membre Héroïque
*
Sexe: Homme
Messages: 3461


Unreal Power...


WWW
« Répondre #9 le: 29 Avril 2008 à 16:56:08 »

Justement, c'est vien ce que j'ai pris en compte pour la 210 ...
comme je l'avais dit dans le sujet qui lui est dédié, je suis en train de la fignoler ... elle sortira ss doute vers la fin de semaine.
Journalisée

Matthieu
Administrateur
Membre Héroïque
*
Sexe: Homme
Messages: 3461


Unreal Power...


WWW
« Répondre #10 le: 02 Mai 2008 à 10:03:26 »

Bon va falloir faire quelques tests, mais j'ai simplifié au maximum la procédure pour faire ça dans la 2.1.0. je fais une doc là dessus.
Journalisée

Jefferson
Néophyte
*
Messages: 47


« Répondre #11 le: 02 Mai 2008 à 11:57:52 »

Ok merci de me tenir au courant Clin d'oeil, j'ai hâte…  Roulement des yeux
Journalisée
Jefferson
Néophyte
*
Messages: 47


« Répondre #12 le: 03 Juin 2008 à 22:20:26 »

Avec pas mal de retard je viens d'installer la version 2.10 de Newslettux (en ayant supprimé l'ancienne version pour ne pas avoir de problème de mise à jour et en gardant les inscrits dans un fichier), et je bloque dès le départ à l'étape de création de ma newsletter il n'y a qu'un seul choix dans "Langue d'écriture" c'est "Français".

Comment faire pour avoir "Anglais" aussi ?

Question subsidiaire: est-ce qu'un écrivain peut accéder à Newslettux en anglais alors que l'admin y accède en français ? Ça ne me sert pas pour l'instant mais je me suis posé la question à l'installation de la 210 en voyant le choix d'install français uniquement là aussi…
En fait pour le choix de la langue à l'install c'est sans doute que la version 210 n'a pas été traduite en anglais, mais pour plus tard en plaçant les fichiers de traduction dans le dossier languages est-ce qu'un travail en collaboration sous 2 langues fonctionnera ?
Journalisée
Matthieu
Administrateur
Membre Héroïque
*
Sexe: Homme
Messages: 3461


Unreal Power...


WWW
« Répondre #13 le: 03 Juin 2008 à 22:41:32 »

Hello,

Pour faire un rapide exposé sur les langues, NewsletTux 2.1.0. existe en français, anglais et allemand.
Il faut un langage par défaut, c'est celui qui est renseigné pendant l'installation. (qui pourra être changé dans la configuration, bien entendu).
Je ne crois pas avoir repris la notion de langue par utilisateurs pour le moment, personne n'en ayant jamais fait la demande explicite : mais cela peut se faire ... Sourire

Concernant la prise en charge au niveau d site, tu devras, si tu souhaites faire une newsletter avec les messages automatique (confirmation d'inscription, etc) en anglais et une autre en français, passer par la surcharge de formulaire. Lis la doc pour cela, en gros, ça te fera renseigner dans le fichier PHP qui accueillera ton formulaire (d'ailleurs ça peut très bien être 2 fichiers différents) 4 variables juste avant l'inclusion de la page "form-newslettux".

Si la doc ne t'éclaire pas suffisamment, reviens me le dire avec l'exemple que tu auras testé.

EDIT : pour installer une nouvelle langue, ou bien tu récupères les fichiers de langue "manuellement" et tu les déposes sur ton FTP, ou bien tu utilises le module complémentaire (dans la section "outils") Sourire
Journalisée

Jefferson
Néophyte
*
Messages: 47


« Répondre #14 le: 03 Juin 2008 à 23:42:52 »

Merci pour cette réponse rapide, j'ai testé l'installation de module et j'ai eu peur au début car j'ai eu l'erreur suivante:

Citation
Warning: fopen(../admin/mod_config_langpackinstall.php) [function.fopen]: failed to open stream: No such file or directory in /monsite/newslettux2/lib/functions.php on line 355
mod_config_langpackinstall.php : Fichier non modifiable
Module non installé, vérifiez l'erreur produite...

Même chose pour l'autre module:

Citation
Warning: fopen(../admin/mod_profiles_deleteoldnewsletters.php) [function.fopen]: failed to open stream: No such file or directory in /monsite/newslettux2/lib/functions.php on line 355
mod_profiles_deleteoldnewsletters.php : Fichier non modifiable
Module non installé, vérifiez l'erreur produite...

Ensuite j'ai compris grâce au message d'erreur que ça vient du fait que j'ai renommé mon dossier "admin" en autre chose (par sécurité), ce qui ne m'avait jamais posé de problème avant.

Bref j'ai juste renommé à nouveau (temporairement) mon dossier en "admin" et c'est passé sans problème, puis j'ai renommé encore le dossier admin comme il était avant et tout semble fonctionner.

J'ai donc bien pu créer une newsletter avec "anglais" comme "Langue d'écriture" .

Il faudra peut-être le signaler dans la FAQ au cas où quelqu'un ait le même problème un jour.

En tout cas c'est bien sympa ce système de module, et bien pratique, c'est du beau boulot !

Je testerais le formulaire et les confirmations d'inscription bilingues demain ou dans la semaine et je posterais ici pour dire si j'ai réussi.
Journalisée
Pages: [1] 2 3 4   Haut de page
Imprimer
Aller à:  

Powered by SMF 1.1.16 | SMF © 2011, Simple Machines
Amber design by Bloc | XHTML | CSS