Page 1 sur 1

adapter un script mail avec une authentification smtp

Posté : 18 sept. 2009, 13:54
par yberges
salut a tous voila j'ai un script php qui envoie des mails en checkant si les personnes ont déjà eu le mail.
Mon probleme c'est que mon hebergeur me demande d'authentifié mes mails ...
mes connaissance php étant tres légère (je bidouille) j'aurais besoins d'aide pour réunifié 2 codes.

Code : Tout sélectionner

<?php // ************************ // // SCRIPT D'ENVOI DE L'email // // ************************ // // on appelle la m?thode post if (isset($_POST['check_mail']) && $_POST['check_mail'] != "") { echo "<div id='resultatsEnvoi'>"; // on avertit l'utilisateur echo "<p><strong>Le processus d'envoi de mail est en cours... </strong></p>"; // Puis du contenu du mail $objetnews = $row_Recordset1['titre']; $contenu = $row_Recordset1['contenu']; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= "From: <Le BBB. Centre régional d'initiatives pour l'art contemporain> [email protected]" . "\r\n"; // ici le script de Jpierre envoyant la newsletter $i=0; while ($i < sizeof($_POST['check_mail']) ) { $cpt=0; while ( ($cpt<60) && ($i<sizeof($_POST['check_mail'])) ) { if (!mail($_POST['check_mail'][$i],$objetnews,$contenu,$headers)) { echo "<p><span style='color:red'>erreur d'envoi sur le mail : "; echo $_POST['check_mail'][$i]."</span></p>"; } else { echo "<p>mail envoyé à : "; echo $_POST['check_mail'][$i]."</p>"; $query_Update = "UPDATE subs SET SubEnvoye='1' WHERE SubEmail='".$_POST['check_mail'][$i]."'"; $update = mysql_query($query_Update) or die(mysql_error()); //mysql_query($query_Update, $bbb) //VERSION EN LIGNE } $cpt=$cpt+1; $i=$i+1; } if ($cpt>59) { sleep(30); echo "Nouveau paquet de 60 mails envoyé, temps d'attente de 30secondes"; } } echo "</div>"; } ?>
et de ce que j'ai pu lire je dois intéger ceci

Code : Tout sélectionner

<?php require_once "Mail.php"; $de = "Auteur <[email protected]>"; $a = "Relecteur <relecteur@ societe.com>"; $sujet = "Relecture"; $body = "Bonjour,\n\Pouvez vous relire mon article?"; $hote= "mail.societe.com"; $nom = "smtp_compte"; $mot = "smtp_mot"; $entete = array ('From' => $de, 'To' => $a, 'Subject' => $sujet); $smtp = Mail::factory('smtp', array ('host' => $hote, 'auth' => true, 'username' => $nom, 'password' => $mot)); $mail = $smtp->send($a, $entete, $texte); // suite du traitement ?>
suis je dans le bon ?
voici ou j'en suis
alors je continu a chercher

Code : Tout sélectionner

<?php require_once('config.inc.php'); // ************************ // // RECUPERATION DES VALEURS // // ************************ // mysql_select_db($database_bbb, $bbb); $liste = mysql_fetch_array(mysql_query("SELECT * FROM listesdiffusion WHERE idListe='".$_GET['idListe']."'")); $query_Recordset2 = "SELECT * FROM ".$liste['nomTableListe'].""; $Recordset2 = mysql_query($query_Recordset2, $bbb) or die(mysql_error()); $row_Recordset2 = mysql_fetch_assoc($Recordset2); $totalRows_Recordset2 = mysql_num_rows($Recordset2); $query_Recordset1 = "SELECT * FROM ifly WHERE idListe='".$_GET['idListe']."'"; $Recordset1 = mysql_query($query_Recordset1, $bbb) or die(mysql_error()); $row_Recordset1 = mysql_fetch_assoc($Recordset1); $totalRows_Recordset1 = mysql_num_rows($Recordset1); ?> <?php // ************************ // // SCRIPT D'ENVOI DE L'email // // ************************ // // on appelle la m?thode post if (isset($_POST['check_mail']) && $_POST['check_mail'] != "") { echo "<div id='resultatsEnvoi'>"; // on avertit l'utilisateur echo "<p><strong>Le processus d'envoi de mail est en cours... </strong></p>"; // Puis du contenu du mail require_once "Mail.php"; $de = "<Le BBB. Centre régional d'initiatives pour l'art contemporain> [email protected]" . "\r\n"; $objetnews = $row_Recordset1['titre']; $headers .= 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $contenu = $row_Recordset1['contenu']; $hote= "mail.societe.com"; $nom = "smtp_compte"; $mot = "smtp_mot"; $entete = array ('From' => $de, 'To' => $a, 'Subject' => $objetnews); $smtp = Mail::factory('smtp', array ('host' => $hote, 'auth' => true, 'username' => $nom, 'password' => $mot)); $mail = $smtp->send($a, $entete, $texte, $headers); // suite du traitement $i=0; while ($i < sizeof($_POST['check_mail']) ) { $cpt=0; while ( ($cpt<60) && ($i<sizeof($_POST['check_mail'])) ) { if (!mail($_POST['check_mail'][$i],$objetnews,$contenu,$headers)) { echo "<p><span style='color:red'>erreur d'envoi sur le mail : "; echo $_POST['check_mail'][$i]."</span></p>"; } else { echo "<p>mail envoyé à : "; echo $_POST['check_mail'][$i]."</p>"; $query_Update = "UPDATE subs SET SubEnvoye='1' WHERE SubEmail='".$_POST['check_mail'][$i]."'"; $update = mysql_query($query_Update) or die(mysql_error()); //mysql_query($query_Update, $bbb) //VERSION EN LIGNE } $cpt=$cpt+1; $i=$i+1; } if ($cpt>59) { sleep(30); echo "Nouveau paquet de 60 mails envoyé, temps d'attente de 30secondes"; } } echo "</div>"; } ?>
si je pouvez avoir des avis
Merci

qqun peut il m'aider ?

Re: adapter un script mail avec une authentification smtp

Posté : 18 sept. 2009, 16:44
par lacfab
J'ai également besoin d'une identification SMTP pour envoyer des mails du serveur de mon entreprise. En effet notre administrateur est obligé de bloquer tout car nous subissons de nombreuses attaques spam en cas contraire.
Je vais suivre ce post avec intérêt.

edit : j'ai testé et j'ai une erreur : Fatal error: Class 'Mail' not found in /Volumes/Graphik HD/www/graphik/admin/BO_identification.php on line 49 je poursuis mes recherches lundi ...

Re: adapter un script mail avec une authentification smtp

Posté : 18 sept. 2009, 18:33
par yberges
hello tu a essayer quoi ?

Re: adapter un script mail avec une authentification smtp

Posté : 18 sept. 2009, 20:23
par sylvaing26
Un petit tour sur :google: avec les mots clés authentifier mail php me donne
http://dominique-colombani.fr/domblog/i ... MTP-et-PHP
La fonction mail() ne peut pas authentifier les mails

Re: adapter un script mail avec une authentification smtp

Posté : 19 sept. 2009, 13:29
par yberges
hello tu sais comment installer le package mail PEAR ?
Merci d'avance

Re: adapter un script mail avec une authentification smtp

Posté : 19 sept. 2009, 13:35
par sylvaing26
hello tu sais comment installer le package mail PEAR ?
Merci d'avance
Aucune idée lol :lol:
Mais google dois expliquer ca !

Re: adapter un script mail avec une authentification smtp

Posté : 19 sept. 2009, 15:01
par FuZZyLine
Salut,

La library phpMailer permet ce genre de trucs, à toi de voir:

http://phpmailer.worxware.com/
http://sourceforge.net/projects/phpmail ... %20php5_6/

@+ ;)

Re: adapter un script mail avec une authentification smtp

Posté : 07 oct. 2009, 09:19
par lacfab
Du coup c'est faisable ou pas d'authetifier simplement un email ?
Pourquoi la fonction mail ne peut pas le faire ? ça parait pourtant simple ... (malheureusement ce n'est pas toujours le cas)