Debutant : formulaire dans un swich et envoi par contact.php

Le
Didier
Bjr,

J'ai un formulaire dans un fichier swich qui récupère des infos, je voudrais
les envoyées par mail via un fichier contact.php.

Ca plante toujours ligne 10 dans le contact.php :

$societe=$_GET["name"];
$nom=$_GET["name1"];
$mail=$_GET['email'];
$message=$_GET['comment_'];

$recipient_email="toto@toto.com"

10 -> $From = "From ". $mail .;
$From . = "From " . $nom ." <" . $mail .">";
$From . = 'Content-type: text/html; charset=iso-8859-1';

$content ="<html><head><title> Contact
commercial</title></head><body><br>";
$content .="Societe : <b>" . $societe ."</b><br>";
$content .="Nom : <b>" . $nom ."</b><br>";
$content .="Email : <b>" . $mail ."</b><br><hr><br>";
$content .= $message;
$content .="<br></body></html>";

mail($recipient_email,$subject,$content,$headers);
?>
<html>
<body bgcolor="#282e2c">
<div align="center"
style="margin-top:60px;color:#ffffff;font-size:11px;font-family:tahoma;font-weight:bold">
Votre message a été envoyé avec succès, merci.
</div>
</body>
</html>
<script>resizeTo(300,300)</script>





A l'aide.merci d'avance à une âme charitable

Didier
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Toto Le Ouf
Le #99584
10 -> $From = "From ". $mail .;


Enlève le point ainsi que l'espace avant le point-virgule : $From = "From ".
$mail;

T.

Olivier Miakinen
Le #99582

J'ai un formulaire dans un fichier swich qui récupère des infos, je voudrais
les envoyées par mail via un fichier contact.php.


Attention danger : si tu ne connais pas bien le principe de
fonctionnement du protocole SMTP (et surtout le format des
messages), tu as 99,99 % de chances d'en faire un relais à
spam.

Ca plante toujours ligne 10 dans le contact.php :


Toto t'a donné la cause du plantage, mais à tout prendre il vaut mieux
que ça plante plutôt que de voir ton compte fermé après que ton serveur
aura spammé la moitié de la planète.

$societe=$_GET["name"];
$nom=$_GET["name1"];
$mail=$_GET['email'];
$message=$_GET['comment_'];


Aucun contrôle ? Pas bien, ça.

$recipient_email=""


Ok, celui-ci est en dur.

10 -> $From = "From ". $mail .;
$From . = "From " . $nom ."

Là, un spammeur peut injecter 10 000 adresses à spammer dans $nom, et
10 000 autres dans $mail.

$From . = 'Content-type: text/html; charset=iso-8859-1';

$content ="<html><head><title> Contact
commercial</title></head><body><br>";
$content .="Societe : $content .="Nom : $content .="Email : $content .= $message;
$content .="<br></body></html>";


Ok pour $content. Là on s'en fiche, c'est dans la zone plus sûre (après
le double CR+LF).

mail($recipient_email,$subject,$content,$headers);


Et $subject ? Et $headers ? Ils sont définis où ?
S'ils viennent aussi de $_GET[], voilà encore deux endroits pour y
injecter 10 000 adresses à spammer (plus le contenu du spam, j'avais
oublié de le préciser).

A l'aide....merci d'avance à une âme charitable


Comme mesure d'urgence :
if (strstr($nom, "n") !== false) { die("oh le vilain spammeur"); }
... et la même chose pour toutes les variables d'entêtes.

Mais il vaut mieux se renseigner un peu plus avant d'utiliser la
fonction mail().

Sitch
Le #97222

Bjr,

J'ai un formulaire dans un fichier swich qui récupère des infos, je voudrais
les envoyées par mail via un fichier contact.php.

Ca plante toujours ligne 10 dans le contact.php :

$societe=$_GET["name"];
$nom=$_GET["name1"];
$mail=$_GET['email'];
$message=$_GET['comment_'];

$recipient_email=""

10 -> $From = "From ". $mail .;


...


A l'aide....merci d'avance à une âme charitable

Didier


Si ton source est exactement tel que tu l'as posté, il manque un ; à
la fin de la ligne précédente (9) d'où l'erreur en ligne 10.
Et il replantera en ligne 10 pour le point en fin de ligne avant le ;

Sitch

Publicité
Poster une réponse
Anonyme