Vous n'êtes pas identifié(e).
[25 janvier 2021] - Publication de Wanewsletter 3.1.0
Bien sûr ça ne marche pas
Oui, le script récupère les données du formulaire à partir du tableau $_POST.
Essayez ça:
if( $acceptenewsletter == 1 )
{
$waroot = '/home/httpd/htdocs/gbtfr/newsletter/';
define('IN_NEWSLETTER', true);
$default_magic_quotes_runtime = get_magic_quotes_runtime();
require($waroot . 'start.php');
include($waroot . 'includes/functions.validate.php');
load_settings();
$action = 'inscription';
$liste = 1;
$email = $mail;
$format = 2;
$code = '';
$sql = 'SELECT * FROM ' . LISTE_TABLE . '
WHERE liste_id = ' . intval($liste);
if( !($result = $db->query($sql)) )
{
trigger_error('Impossible d\'obtenir les données sur la liste', ERROR);
}
else if( $listdata = $db->fetch_array($result) )
{
include_once($waroot . 'includes/class.form.php');
include_once($waroot . 'includes/class.mailer.php');
$mailer = new Mailer($waroot . 'language/email_' . $nl_config['language'] . '/');
if( $nl_config['use_smtp'] )
{
$mailer->smtp_path = $waroot . 'includes/';
$mailer->use_smtp(
$nl_config['smtp_host'],
$nl_config['smtp_port'],
$nl_config['smtp_user'],
$nl_config['smtp_pass']
);
}
$mailer->hebergeur = $nl_config['hebergeur'];
$mailer->set_charset($lang['CHARSET']);
$mailer->set_format(FORMAT_TEXTE);
$wanewsletter = new Wanewsletter($listdata);
if( $wanewsletter->account_info($email, '', $code, $format, $action) )
{
$wanewsletter->subscribe();
}
$message = $wanewsletter->message;
if( $wanewsletter->update_stats )
{
include_once($waroot . 'includes/functions.stats.php');
update_stats($listdata);
}
}
else
{
$message = $lang['Message']['Unknown_list'];
}
}
Il faudrait que je simplifie newsletter.php pour donner la possibilité de faire de telles intégrations
PHP et MySQL, un duo gagnant !
Hors ligne
dans la variable $message
PHP et MySQL, un duo gagnant !
Hors ligne
j'ai dupliqué le script en changeant la condition :
une seconde checkbox permet de s'inscrire à la seconde liste :
if( $acceptenewsletterrevendeurs == 1 ){
}
avec
$liste = 2;
le reste du code est identique au précédent.
Mais ça me met un message d'erreur :
Fatal error: Cannot redeclare class template in /home/httpd/htdocs/gbtfr/newsletter/includes/template.php on line 30
Hors ligne
dans le second script j'ai mis en commentaire
require($waroot . 'start.php');
include($waroot . 'includes/functions.validate.php');
Et ça fonctionne :
Est ce que c'est ça qu'il faut faire :
Hors ligne
en fait je m'en sors ainsi :
dans la seconde condition :
if ($acceptenewsletter == 0){
require($waroot . 'start.php');
include($waroot . 'includes/functions.validate.php');}
Si la 1ere checkbox est cochée il n'exécute pas ce bout de code, sinon oui
Hors ligne