Vous n'êtes pas identifié(e).
[25 janvier 2021] - Publication de Wanewsletter 3.1.0
J'ai réussi sans trop de problème à rajouter des champs personnalisés dans la table "wa_abonnes". Mon formulaire personnalisé fonctionne très bien mais je voudrai savoir comment faire pour rendre ces champs obligatoires.
Le champ "email" étant vérifié par le script d'origine, je suppose qu'il est possible d'en faire de même pour les champs personnalisés que j'ai rajoutés.
Celà fait plusieurs jours que je parcours avec beacoup d'intérêt ce forum mais sans trouver réponse à ma question. (je préférerai ne pas employer un javascript pour valider ces données, mais plutôt les vérifier coté serveur ..... plus sur à mon avis.)
En tout cas bravo pour ce script .
:???:
Fred
Hors ligne
Toujours personne de confronter à ce problème ????
Pourtant le forum comporte pas mal de sujet traitants de l'ajout de champs personnalisés pour les abonnés !!!
Fred
Hors ligne
Toujours personne de confronter à ce problème ????
Pourtant le forum comporte pas mal de sujet traitants de l'ajout de champs personnalisés pour les abonnés !!!
Oui mais pour les rendre obligatoire, c'est différent. Quelle version de wanewsletter utilisez-vous ?
PHP et MySQL, un duo gagnant !
Hors ligne
pour info voici l'adresse de mon formulaire de test
http://frederic.leput.free.fr/newsletter/
Fred
Hors ligne
Alors, éditez le fichier newsletter.php, vous trouverez à la ligne 46 à 52 :
$vararray = array('action', 'email', 'code', 'format', 'liste');
foreach( $vararray AS $varname )
{
${$varname} = ( !empty($_REQUEST[$varname]) ) ? $_REQUEST[$varname] : '';
}
if( $action != '' )
remplacez par ça:
$vararray = array('action', 'email', 'code', 'format', 'liste');
foreach( $vararray AS $varname )
{
${$varname} = ( !empty($_REQUEST[$varname]) ) ? $_REQUEST[$varname] : '';
}
$error = false;
$vararray = array('field1', 'field2', 'field3');
foreach( $vararray AS $varname )
{
if( !empty($_REQUEST[$varname]) ) {
${$varname} = $_REQUEST[$varname];
}
else {
$error = true;
$message = "Vous devez remplir tous les champs obligatoires";
break;
}
}
if( $action != '' && !$error )
Remplacez field1, field2 et field3 par les noms de vos champs bien sùr.
PHP et MySQL, un duo gagnant !
Hors ligne
ça y est c'est testé et ça marche, merci
Fred
Hors ligne
bonsoir,
Trouvez cette partie dans newsletter.php (vers ligne 64):
$action = ( !empty($_REQUEST['action']) ) ? trim($_REQUEST['action']) : '';
$email = ( !empty($_REQUEST['email']) ) ? trim($_REQUEST['email']) : '';
$format = ( isset($_REQUEST['format']) ) ? intval($_REQUEST['format']) : 0;
$liste = ( isset($_REQUEST['liste']) ) ? intval($_REQUEST['liste']) : 0;
$message = '';
$code = '';
Ajoutez le bloc suivant à la suite:
$vararray = ;
foreach( $vararray AS $varname )
{
if( !empty($_REQUEST[$varname]) ) {
${$varname} = $_REQUEST[$varname];
}
else {
$action = '';
$message = "Vous devez remplir tous les champs obligatoires";
break;
}
}
PHP et MySQL, un duo gagnant !
Hors ligne
j'ai suivi la manip pour rendre les champs obligatoires, mais ça marche toujours pas, j'ai maintenant un message d'erreur
que faire ?
Hors ligne