message après envoie mail membre...

Répondre
slyckers
le 17/11/2009 à 22:09
slyckers
Bonsoir,
JE viens d'envoyer un mail et voici ce que j'ai comme erreur :

Warning: ereg_replace() [function.ereg-replace]: REG_EMPTY in /home/www/f112fb8e06608757cac48d783a3285be/web/admin/send.php on line 46

Warning: ereg_replace() [function.ereg-replace]: REG_BADRPT in /home/www/f112fb8e06608757cac48d783a3285be/web/admin/send.php on line 47

Warning: ereg_replace() [function.ereg-replace]: REG_EPAREN in /home/www/f112fb8e06608757cac48d783a3285be/web/admin/send.php on line 47

Warning: ereg_replace() [function.ereg-replace]: REG_BADRPT in /home/www/f112fb8e06608757cac48d783a3285be/web/admin/send.php on line 47

Warning: ereg_replace() [function.ereg-replace]: REG_BADRPT in /home/www/f112fb8e06608757cac48d783a3285be/web/admin/send.php on line 47

Warning: ereg_replace() [function.ereg-replace]: REG_BADRPT in /home/www/f112fb8e06608757cac48d783a3285be/web/admin/send.php on line 46

Warning: ereg_replace() [function.ereg-replace]: REG_BADRPT in /home/www/f112fb8e06608757cac48d783a3285be/web/admin/send.php on line 47


Une petite idée ?

Merci
Je suis un guerrier et un insatisfait permanent, c’est ça l’apanage du champion :)
LA GLOBULE
le 17/11/2009 à 22:12
LA GLOBULE
Quel est le rapport avec un envoi de mail ?

Il nous faudrait voir le code de ton expression régulière pour comprendre.
slyckers
le 17/11/2009 à 22:18
slyckers
ligne 46 $texte=ereg_replace("$login", "#login#", $texte);
ligne 47 $texte=ereg_replace("$pass", "#pass#", $texte);

Désolé Globule
Je suis un guerrier et un insatisfait permanent, c’est ça l’apanage du champion :)
LA GLOBULE
le 17/11/2009 à 22:56
LA GLOBULE
Pour faire un vrai test probant, il nous faudrait aussi le contenu exact des tes variables.
slyckers
le 17/11/2009 à 23:42
slyckers
Tout le bout script...plus silmple non ?:)
<? 
include("../config.php");
include("../functions.php");
include("secure.php");
connexiondb();
est_vide($sujet, 'Le champ Sujet n\'est pas renseigné !');
est_vide($message, 'Le champ Message n\'est pas renseigné !');
$texte=$message;
if($page==""){$page=0;}
$limit="5000";
$debut=$page*$limit;
$requete=mysql_query("select distinct(email) from $db_table WHERE valide='1'");
$nb_total=mysql_num_rows($requete);
$requete=mysql_query("select distinct(email),nom,prenom,passwd,login from $db_table WHERE valide='1' LIMIT $debut,$limit");
$nombre=mysql_num_rows($requete);
$sujet=str_replace("#quot#","\"",$sujet);
$texte=str_replace("#quot#","\"",$texte);
$sujet=stripslashes($sujet);
$texte=stripslashes($texte);

$i=0;
$tmp=$debut+$limit;
$a=$tmp-$limit+1;
echo "<table align=\"center\">\n";
if($html=="1") {
$texte = ereg_replace("\n", "<br>", $texte);
}
$i=0;
while ($i<$nombre)
{
$To=mysql_result($requete,$i,"email");
$nom=mysql_result($requete,$i,"nom");
$prenom=mysql_result($requete,$i,"prenom");
$pass=mysql_result($requete,$i,"passwd");
$login=mysql_result($requete,$i,"login");
$texte=ereg_replace("#email#", "$To", $texte);
$texte=ereg_replace("#login#", "$login", $texte);
$texte=ereg_replace("#pass#", "$pass", $texte);
$texte=ereg_replace("#nom#", "$nom", $texte);
$texte=ereg_replace("#prenom#", "$prenom", $texte);
$test="Erreur : Mail non envoy&eacute;";
if($html=="1") { if(mail($To, "[Membres] ".$sujet, "$texte<br><br>----------------------------------<br>Ceci n'est pas une newsletter, juste un message envoyé aux membres du site.<br><a href='http://www.days-media.fr'>Days-media.fr , le site de streaming en haute qualité</a>", "From: $nomsite <$mailmaster>\nX-Mailer: Mailingliste\nContent-Type: text/html;charset=\"iso-8859-1\"")) {$test="Mail envoy&eacute; au format html.";} }
if($html=="0") { if(mail($To, "[Membres] ".$sujet, "$texte\n\n----------------------------------\nCeci n'est pas une newsletter, juste un message envoyé aux membres du site.\nhttp://www.days-media.fr", "From: $nomsite <$mailmaster>")) {$test="Mail envoy&eacute; au format texte.";} }
echo "<tr><td><font size=1><b>$a-</b> </font>$To</td><td><b>$test</b></td></tr>\n";
$texte=ereg_replace("$To", "#email#", $texte);
$texte=ereg_replace("$login", "#login#", $texte);
$texte=ereg_replace("$pass", "#pass#", $texte);
$texte=ereg_replace("$nom", "#nom#", $texte);
$texte=ereg_replace("$prenom", "#prenom#", $texte);
$i++; $a++;
}
echo "</table>\n";

$tmp=$debut+$limit;
if($tmp>$nb_total) {$tmp=$nb_total;}
echo "<br><br><b>$tmp</b> mails envoyés sur <b>$nb_total</b> !<br><br>";

$sujet=str_replace("\"","#quot#",$sujet);
$texte=str_replace("\"","#quot#",$texte);
if($debut+$limit<$nb_total)
{
$suivant=$page+1;
echo "<form action=\"send.php\" method=\"post\">
<input type=\"hidden\" name=\"page\" value=\"$suivant\">
<input type=\"hidden\" name=\"sujet\" value=\"$sujet\">
<input type=\"hidden\" name=\"message\" value=\"$texte\">
<input type=\"hidden\" name=\"html\" value=\"$html\">
<input type=\"submit\" value=\"Continuer\">&nbsp;<input type=\"button\" value=\"Arrêter\" OnClick=\"window.close();\">
</form>";
}
else {echo "<a href=\"javascript:window.close();\">Quitter</a>";}
mysql_close();
?>
Je suis un guerrier et un insatisfait permanent, c’est ça l’apanage du champion :)
LA GLOBULE
le 17/11/2009 à 23:49
LA GLOBULE
Ben pas vraiment non.

Le contenu des variables est interessant, pas le script en soit.
Car c'est surement le contenu de tes variables qui fait que l'expression regulière bug.
slyckers
le 18/11/2009 à 00:20
slyckers
Ok mais là personnellement je n'avance pas la globule... Il faut que je travaille sur quoi car je n'ai jamais eu ce problème :(

Merci
Je suis un guerrier et un insatisfait permanent, c’est ça l’apanage du champion :)
slyckers
le 18/11/2009 à 01:22
slyckers
ereg_replace -> str_replace tout simplement...

@+
Je suis un guerrier et un insatisfait permanent, c’est ça l’apanage du champion :)
LupusMic
le 19/11/2009 à 02:10
LupusMic
Oui mais non, tu as contourné le problème, mais tu ne l'as pas résolu.

Les messages d'erreurs sont clairs, et La Globule a eu le réflexe de te demander le contenu des variables, ou un code qui permette de réduire le problème.

Au vu des messages d'erreur, c'est facile de te dire que la Regex fournie à ereg_replace est moisie. C'est encore plus facile d'ignorer le problème en le contournant.

Ce que tu dois faire, c'est comprendre pourquoi tes variables sont vides, et rendre ton code plus robuste en contrôlant les données que tu utilises pour construire tes chaînes.

Mais en attendant, programmer par hasard risque de te coûter beaucoup (trous de sécurité).

À propos, les fonctions ereg sont déconseillée car elles seront bientôt supprimées, et qu'elles ne sont pas performantes. L'option register_global va être supprimée, ainsi que les magic quotes.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours