Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

tester un mail() dans une boucle while()

4 réponses
Avatar
DD
Salut à tous!
Je suis un peu juste en php, mais j'ai réussi avec l'aide de ce groupe
il y a maintenant deux ou trois ans à concocter un petit site sur le
service de radio dans lequel je bosse.
J'avais un peu disparu depuis, mon admin ne voulant plus payer mon abo
chez nexen.
Bon, mais ça me manquait un peu, tout ça.


J'ai juste un petit souci.

Le script ci dessous fonctionne très bien chez mon hébergeur actuel,
mais je ne parviens pas à trouver l'astuce pour tester la fonction
mail().

J'aimerais bien pouvoir faire un if sur $connect, du style
if($connect=="1"){
echo "ok";
}else{
echo "kpout";
}

Et quand je place ce "if", juste apès la boucle, j'obtiens
systématiquement "kpout", même si le mail est parti.
Idem si je le place dans la boucle.

Et j'ai besoin de cette boucle pour récuperer mon $Dest.

Pouvez vous m'aider ?
DD




<?php
include ("Config/connex.inc.php");


if(!$db_link){
echo "Désolé, pas de connexion avec la base de données";
}else{

$Sujet="demande de rdv";
$Message="Envoyé par: $mnom $mprenom\ntel: $mphone\nDate de naissance:
$mnaiss\nsexe: $msexe\nExamen: $mexam région $mreg:\nIl a joint le
message
suivant:\n********************\n$texteinsert\n********************";


$sqldest=mysql_db_query("$basename","select * from $tabdest where
actif='O'",$db_link);

WHILE($myrowd=mysql_fetch_array($sqldest))
{
$Dest=$myrowd[2];
$connect=mail($Dest,$Sujet,$Message,"From: $memail\nReply-To:
$memail");
echo "Courrier envoyé avec succès";
}

}

?>

4 réponses

Avatar
Guillaume Bouchard
DD wrote:

<?php
include ("Config/connex.inc.php");


Par principe, je metrais un require.

if(!$db_link){
echo "Désolé, pas de connexion avec la base de données";


Pourquoi ne le gere tu pas dans ton fichier inclue ?

$sqldest=mysql_db_query("$basename","select * from $tabdest where
actif='O'",$db_link);


mysql_db_query est obsolette.
+ Gestion d'erreur.

--->

mysql_select_db('truc');
$res = mysql_query($requete) or die(mysql_error().$requete);

WHILE($myrowd=mysql_fetch_array($sqldest))


Fait un peux respirer ton code, c'est hyper lourd.
$connect=mail($Dest,$Sujet,$Message,"From: $memailnReply-To:
$memail");


if(mail(...))

Bonne chance.

--
Guillaume.

Avatar
CSC
Bonjour,
essaye de faire :
if($connect == TRUE){
echo "ok";
}else{
echo "kpout";
}

mail() renvoie un booleen (TRUE ou FALSE). Peut être qu'un booleen ce n'est
pas une chaine de caractère et que "1" en est une ?

Csc

"DD" a écrit dans le message de
news:
Salut à tous!
Je suis un peu juste en php, mais j'ai réussi avec l'aide de ce groupe
il y a maintenant deux ou trois ans à concocter un petit site sur le
service de radio dans lequel je bosse.
.............................


Avatar
DD
OK, merci les gars, je teste ça demain, car il est tard et mes
paupières sont lourdes.
DD
Avatar
Niko
Suite au message de "DD" :

J'ai pas resisté.

<?php
require "Config/connex.inc.php";
if (!$db_link){
echo "Désolé, pas de connexion avec la base de données";
} else {
$separat = "********************n";
$Sujet = "Demande de rdv";
$Message = "Envoyé par: $mnom $mprenomn";
$Message .= "tel: $mphonen";
$Message .= "Date de naissance: $mnaissn";
$Message .= "sexe: $msexen";
$Message .= "Examen: $mexamn";
$Message .= "Région $mreg:n";
$Message .= "Il a joint le message suivant:n";
$Message .= $separat;
$Message .= $texteinsert."n";
$Message .= $separat;
$sql = "SELECT * FROM $tabdest WHERE actif='O'";
$req = @mysql_db_query($basename, $sql, $db_link) or
die("Erreur SQL sur <pre>$sql</pre>");
if (@mysql_num_rows($ok) > 0) {
while ($myrowd = @mysql_fetch_array($ok)) {
if ($myrowd[2]) {
if (@mail($myrowd[2], $Sujet, $Message, "From:
$memailnReply-To: $memail")) {
echo "<li>Mail envoyé à $myrowd[2]</li>n";
} else {
echo "<li></b>Mail non envoyé
$myrowd[2]</b></li>";
}
} else {
echo "<li><b>Erreur, mail absent</b></li>";
}
}
} else {
echo "Aucun email de membre actif dans la base de données";
}
}
?>

--
Niko
Tarmo en devenir
Enlever nospam- pour me répondre