pb envoi formulaire par mail avec checkbox choix multiple

gulevir
Invité n'ayant pas de compte PHPfrance

15 oct. 2006, 10:32

j'ai le problème suivant : je crée un formulaire avec des choix multiple.
je veux envoyer le résultat par email. J'ai essayé plusieurs combinaison, en général le message est vide ou j'obtiens une erreur.
Merci de m'aider.


voici le code la page html :

Code : Tout sélectionner

<form method="post" name="form1" action="formmail.php"> Quels sujets aujourd'hui ?<br /> <label> <input type="checkbox" name="subjects[]" value="Technologie" /> Technologie &nbsp;&nbsp;&nbsp; </label> <label> <input type="checkbox" name="subjects[]" value="Développement" /> Développement &nbsp;&nbsp;&nbsp; </label> <label> <input type="checkbox" name="subjects[]" value="Recherche" /> Recherche </label><br /> <br /> Comment utilisez-vous votre ordinateur ?<br /> <label> <input type="checkbox" name="uses[]" value="Internet" checked="checked" /> Internet &nbsp;&nbsp;&nbsp; </label> <label> <input type="checkbox" name="uses[]" value="Développement" /> Développement &nbsp;&nbsp;&nbsp; </label> <label> <input type="checkbox" name="uses[]" value="Jeu" /> Jeu </label><br /><br /> <input type="submit" value="Envoyer" /> <input type="reset" value="Rétablir" /> </form>
et voici la page formmail.php
<?php
$message =$_POST['subjects'][].$_POST['uses'][];
mail('[email protected]', 'contact à traiter', $message);
?>

Mammouth du PHP | 1029 Messages

16 oct. 2006, 09:30

Bonjour,

essaye quelque chose dans le genre

<?php
$sujet = $_POST['subjects'];
$use = $_POST['uses'];

foreach ($sujet as $key){
	
	$message.=$sujet[$key].' '.$use[$key];
}

mail('[email protected]', 'contact à traiter', $message);

?>


L'expérience est la somme de toutes nos erreurs.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

16 oct. 2006, 10:04

@Maitrepylos
Attention les deux tableaux $sujet et $use ne vont pas forcément avoir la même taille voire même pas exister... tu ne peux donc inclure l'affichage des deux contenu de tableau dans une même boucle.

@gulevir
L'idée est là mais avec deux boucles foreach() une pour chaque variable tableau.

Sinon n'hésite pas à regarder la FAQ

En passant est-ce qu'il y a vraiment un rapport avec PHP5 dans ce que tu fait ?

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Mammouth du PHP | 1029 Messages

16 oct. 2006, 10:28

@Maitrepylos
Attention les deux tableaux $sujet et $use ne vont pas forcément avoir la même taille voire même pas exister... tu ne peux donc inclure l'affichage des deux contenu de tableau dans une même boucle.
Juste, je m'étais arreté au fait qu'il avait 3 checkboxs de chaque. je n'ai pas tenu compte qu'un checkbox pouvais ne pas être coché, désolé :oops:
L'expérience est la somme de toutes nos erreurs.