Annonce

#1 2003-12-09 18:12:22

Bobe
Administrateur
Lieu : La Rochelle
Inscription : 2002-05-27
Messages : 5 299

Re : inscrire dans une liste à partir d'1 checkbox

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 hmm


PHP et MySQL, un duo gagnant !

Hors ligne

#2 2003-12-10 12:40:12

Bobe
Administrateur
Lieu : La Rochelle
Inscription : 2002-05-27
Messages : 5 299

Re : inscrire dans une liste à partir d'1 checkbox

dans la variable $message


PHP et MySQL, un duo gagnant !

Hors ligne

#3 2003-12-10 15:52:33

ensemblevide
Membre
Inscription : 2003-12-10
Messages : 26
Site Web

Re : inscrire dans une liste à partir d'1 checkbox

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

#4 2003-12-10 16:12:00

ensemblevide
Membre
Inscription : 2003-12-10
Messages : 26
Site Web

Re : inscrire dans une liste à partir d'1 checkbox

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

#5 2003-12-10 16:20:08

ensemblevide
Membre
Inscription : 2003-12-10
Messages : 26
Site Web

Re : inscrire dans une liste à partir d'1 checkbox

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

Pied de page des forums