Page 1 sur 1

choix d'adresse email dans un formulaire..

Posté : 19 déc. 2006, 15:35
par Boro64
Bonjour à toutes et tous,
Ah re-voilà le newbie allez vous dire...et vous aurez raison. D'autant que, je le sens, je vais poser une "bête question" de newbi. Tant pis, je me lance:
Voilà le problème. Sur un formulaire de contact, je propose aux visiteurs de contacter soit mes clients (Les Libraires), soit moi (le webmachin); j'utilise donc 2 input radio; j'ai donc une variable adresse_destinataire pour le 1er...et j'ai appelé $adresse_destinataire2 le second (déjà là, j'ai comme l'impression d'avoir tout faux...le nom de variable peut être?)
Voici (ce sera plus clair que mes explications :oops: ) le code du formulaire:

Code : Tout sélectionner

<form method=POST action=formcont.php > <input type=hidden name=subject value=formmail> <table> <tr><td>Choisissez votre destinataire:</td> <td>Les Libraires<input type="radio" name="lib" value="lib" /> - Le webmaster<input type="radio" name="web" value="web" /></td> <tr><td>Votre Nom:</td> <td><input type=text name=name size=30></td></tr> <tr><td>Votre Email:</td> <td><input type=text name=email size=30></td></tr> <tr><td>Sujet:</td> <td><input type=text name=title size=30></td></tr> <tr><td colspan=2>Commentaires:<br> <textarea cols=50 rows=6 name=comments></textarea> </td></tr> </table> <br> <input type=submit value=Envoyer> - <input type=reset value=Annuler> </form>
et voici mon embryon de script php:
<?php

	$name = $_POST['name'];
	$email = $_POST['email'];
	$point = strpos($email,".");
	$aroba = strpos($email,"@");
	$auto_mail = $_POST['auto_mail'];
	$adresse_destinataire = 'libraires@librairie-alinea-bayonne .com';
	$adresse_destinataire2 = '[email protected]'];
	$objet = 'Question(s) Client Librairie Alinea';
	$message = addslashes(
	"Nom:".$_POST['name'].
	"\n Message: " .$_POST['comments']);
	
	
	if (empty($name))
{
print ("<center><b>Le nom doit &ecirc;tre renseign&eacute;</b></center>");
die();
}

if (empty($email))
{
print ("<center><b>Votre email doit &ecirc;tre renseign&eacute;</b></center>");
die();
}

if($point=='')
{
print ("<center><b>Votre email doit comporter un <b>point</b></b></center>");
die();
}
elseif($aroba=='')
{
print ("<center><b>Votre email doit comporter un <b>'@'</b></b></center>");
die();
} 

else
{
if($lib = $_POST['lib']
{

	mail($adresse_destinataire,$objet,$message);
}
if($web = $_POST['web']
{
	
	mail($adresse-destinataire2, $objet, $message);
	print('<br /><br/><center><b>Votre commande a été envoyée avec succès !</b>
	<br />
	<br />
	Cliquez <a href="index.html?page=index"><b>ici</b></a> pour retourner à la page d\'accueil, ou 
				<a href="contacts.php?page=contacts"><b>ici</b></a> pour retourner à la page 
				de contacts.</center>');
exit();
}
?>
Je dis embryon (parce que c'est ce que je suis :lol: et qu'il doit encore évoluer.
Ne vous arrachez pas les cheveux, mais qques indications de directions de travail seront les bienvenues.
D'avance merci à vous toutes et tous

Posté : 19 déc. 2006, 15:48
par Cyrano
Problème avec les boutons radios : de la manière dont tu procèdes, tu peux cocher les deux. Pour limiter le choix à un seul, les deux boutons radios doivent avoir la même valeur d'attribut name.

Posté : 20 déc. 2006, 12:28
par Boro64
Bonjour,
et bien vu et merci Cyrano; il y avait aussi des erreurs type un crochet qui se promenait seul, un point virgule qui n avait rien à faire là, etc.
Ceci dit ça marche toujours pas mais je cherche. Comment devrais je faire? Un variable pour chaque destinataire potentiel et une variable choix? Je me perds un peu.
D'avance merci des infos sur une direction à prendre et merci encore pour vos conseils

Posté : 20 déc. 2006, 13:02
par Cyrano
Dans la page de traitement, ajoute ceci en début de code PHP:
<pre>
<?php
print_r($_POST);
?>
</pre>
remplis ton formulaire et envoie les données, puis, observe ce que ça t'affiche, tu y trouveras sûrement des détails utiles.

Posté : 20 déc. 2006, 22:40
par Boro64
Bonsoir,
Pffff...désolé je ne m'en sorts plus; merci néanmoins Cyrano.
Voilà le message que j'obtiens maintenant
Parse error: syntax error, unexpected '{' in......ligne 59
il s'agit de la ligne concernant le dernier else dans mon code que voici:
<?php

	$choix = $_POST['choix'];
	$val = $_POST['lib'];
	$val1 = $_POST['web'];
	$name = $_POST['name'];
	$email = $_POST['email'];
	$point = strpos($email,".");
	$aroba = strpos($email,"@");
	$auto_mail = $_POST['auto_mail'];
	$adresse_destinataire = 'libraires@librairie-alinea-bayonne .com';
	$adresse_destinataire2 = '[email protected]';
	$objet = 'Question(s) Client Librairie Alinea';
	$message = addslashes(
	"Nom:".$_POST['name'].
	"\n Message: " .$_POST['comments']);
	
if (empty($name))
{
print ("<center><b>Le nom doit &ecirc;tre renseign&eacute;</b></center>");
die();
}

if (empty($email))
{
print ("<center><b>Votre email doit &ecirc;tre renseign&eacute;</b></center>");
die();
}

if($point=='')
{
print ("<center><b>Votre email doit comporter un <b>point</b></b></center>");
die();
}
elseif($aroba=='')
{
print ("<center><b>Votre email doit comporter un <b>'@'</b></b></center>");
die();
} 


if($choix = $val)
{

	mail($adresse_destinataire,$objet,$message);
	
}
else($choix = $val1)
{	
	mail($adresse-destinataire2, $objet, $message);
	print('<br /><br/><center><b>Votre commande a été envoyée avec succès !</b>
	<br />
	<br />
	Cliquez <a href="index.html?page=index"><b>ici</b></a> pour retourner à la page d\'accueil, ou 
				<a href="contacts.php?page=contacts"><b>ici</b></a> pour retourner à la page 
				de contacts.</center>');
exit();

}
?>
Où est mon erreur????
D'avance merci à toutes et tous

Posté : 20 déc. 2006, 22:48
par Ajoloca
Bonsoir,

tu est sur que cette syntaxe est correcte???
if($choix = $val)
{

    mail($adresse_destinataire,$objet,$message);
    
}
else($choix = $val1){
Pour tester une égalité c'est ==
dans ton else la même erreur et je pense que c'est pas un else mais un elseif que tu voulais.

Posté : 20 déc. 2006, 23:02
par Boro64
Oupsss... :oops:
Autant pour moi. J'avais effectivement écrit d'abord == mais avec toutes mes révisions je me suis ensuite emmelés les pinceaux...
Merci c'est nickel maintenant.
:o
Bonne soirée et encore merci

Posté : 20 déc. 2006, 23:07
par Ajoloca
Re,

Bonne soirée à toi aussi, mais tu ne penses pas qu'elle serait meilleure vec un petit [Résolu] ?

Posté : 20 déc. 2006, 23:08
par Boro64
Oh lala...ça va vraiement pas moi!
Encore toutes mes excuses et merci encore pour le coup de main