Bonjour,
Je recherche de l'aide afin d'optimiser mon formulaire de contact.
Actuellement voici la configuration de ma base de données :

Table "formulaire" :
id_form   nom   objet   texte   mail   mail_dest

Table "destinataire" :
Id_dest   Nom   mail_desti
Voici le code de mon formulaire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
 
<?php
// Initalisation
	$validContact 	= 0;
	$MsgErrContact 	= '';
	$defaut_nom 	= 'Nom';
	$defaut_mail 	= 'Votre adresse mail';
	$defaut_objet 	= 'Objet';
	$defaut_texte 	= 'Texte';
	$nom 		= $defaut_nom;
	$mail 		= $defaut_mail;
	$objet 		= $defaut_objet;
	$texte 		= $defaut_texte;
 
// si le formulaire est post�
if (isset($_POST['B1']))
{
	// ----------------------------------------------------
	// R�cup�ration des valeurs des champs du formulaire
	// ----------------------------------------------------
	$nom 		= (isset($_POST['nom']) && trim($_POST['nom'])!=$defaut_nom)? 		trim(stripslashes($_POST['nom'])) : $defaut_nom;
	$mail 		= (isset($_POST['mail']) && trim($_POST['mail'])!=$defaut_mail)? 	trim(stripslashes($_POST['mail'])) : $defaut_mail;
	$objet 		= (isset($_POST['objet']) && trim($_POST['nom'])!=$defaut_objet)? 	trim(stripslashes($_POST['objet'])) : $defaut_objet;
	$texte 		= (isset($_POST['texte']) && trim($_POST['nom'])!=$defaut_texte)? 	strip_tags(trim(stripslashes($_POST['texte']))) : $defaut_texte;	// textarea + protection anti-xss
	// ----------------------------------------------------
	// Gestion des erreurs
	// ----------------------------------------------------
	// champs obligatoires
	$champ_obligatoire = array();
	// Message
	if ($nom=='' || $nom==$defaut_nom) {	$validContact = 2;	$champ_obligatoire[] = 'Votre Nom'; }
	if ($mail=='' || $mail==$defaut_mail) {	$validContact = 2;	$champ_obligatoire[] = 'Votre adresse mail'; }
	if($validContact==2 && count($champ_obligatoire)>0) {
		$MsgErrContact 	.= 'Remplissez les champs obligatoires : '.implode(', ',$champ_obligatoire).'<br />';
	}
	// -------------
	// regex e-mail
	$regex_mail = '/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i'; 
	// On v�rifie que le format de l'e-mail est correct
	if ($mail!='' && $mail!='Votre adresse mail' && !preg_match($regex_mail, $mail)) {
		$MsgErrContact 	.= 'Adresse mail invalide (doit �tre de la forme : <a href="mailto:xxxx@xx.xx">xxxx@xx.xx</a>)'.'<br />';
		$validContact 	= 2;
	}
	// -------------
	// essai de connexion � la base de donnees
	if(!mysql_connect('mysql51-26.pro','sniazllbbd2','XXXXXXX')){
		$MsgErrContact 	.= 'Connection � la base de donnees Impossible'.'<br />';
		$validContact 	= 2;
	}
	// -------------
	if ($validContact!=2) {
		$validContact = 1;
	}
	// ----------------------------------------------------
	// PAS d'ERREUR : TRAITEMENT
	// ----------------------------------------------------
	if($validContact == 1) {
 
		// -------------
		// 1/ PROTECTION contre injection SQL AVANT insertion en bdd
		$bd_nom 	= mysql_real_escape_string($nom);
		$bd_mail 	= mysql_real_escape_string($mail);
		$bd_objet 	= mysql_real_escape_string($objet);
		$bd_texte 	= mysql_real_escape_string($texte);
		// -------------
		// 2/ Enregistrement en base de donn�es
		mysql_select_db('sniazllbbd2');
		$requete = "INSERT INTO formulaire SET nom='$bd_nom',objet='$bd_objet',texte='$bd_texte', mail='$bd_mail'" ;
		$resultat = mysql_query($requete);
		// -------------
		// 3/ ENVOI d'un email a l'administrateur
		$message	= date("d/m/Y H:m:s\n")."\n".
					" Nouveau contact :"."\n";
					" Nom :".$nom."\n".
					" Adresse mail :".$mail."\n".
					" Objet :".$objet."\n".
					" Texte :".$texte;
		$entetes	= "From: $mail\nReply-to: $mail\n".
					"MIME-Version: 1.0\r\n".
					"Content-type: text/plain; charset=utf-8\r\n"; // (format TEXTE)
		$sujet		= "Contact site SNIA de la part de ".$nom;
		$webmaster	= 'raphael.1@gmail.com';
		mail($webmaster,$sujet,$message,$entetes);
		// -------------
	} // fin traitement
} // fin si le formulaire est post�
?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr" dir="ltr">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
	<title>Formulaire contact</title>
	<style type="text/css">
	label { float:left; width:150px; text-align:right; margin-right:5px; }
	</style>
</head>
<body>
<?php // Messages
if($validContact==1) { // message OK ?>
	<p>Votre message a bien �t� envoy�</p>
<?php
} elseif($validContact==2) { // message ERREUR ?>
	<p><?php echo $MsgErrContact; ?></p>
<?php } ?>
 
<?php // Formulaire
if($validContact!=1) { ?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
	<p>
		<label for="idnom">Nom : </label>
		<input id="idnom" name="nom" type="text" size="30" value="<?php echo $nom; ?>" onfocus="if(this.value=='<?php echo $defaut_nom; ?>'){ this.value=''; }" onblur="if(this.value==''){ this.value='<?php echo $defaut_nom; ?>'; }">
	</p>
	<p>
		<label for="idmail">Votre adresse mail : </label>
		<input id="idmail" name="mail" type="text" size="30" value="<?php echo $mail; ?>" onfocus="if(this.value=='<?php echo $defaut_mail; ?>'){ this.value=''; }" onblur="if(this.value==''){ this.value='<?php echo $defaut_mail; ?>'; }">
	</p>
	<p>
		<label for="idobjet">Objet : </label>
		<input id="idobjet" name="objet" type="text" size="50" value="<?php echo $objet; ?>" onfocus="if(this.value=='<?php echo $defaut_objet; ?>'){ this.value=''; }" onblur="if(this.value==''){ this.value='<?php echo $defaut_objet; ?>'; }">
	</p>
	<p>
		<label for="idtexte">Texte : </label>
		<textarea id="idtexte" name="texte" cols="40" rows="3" onfocus="if(this.value=='<?php echo $defaut_texte; ?>'){ this.value=''; }" onblur="if(this.value==''){ this.value='<?php echo $defaut_texte; ?>'; }"><?php echo $texte; ?></textarea>
	</p>
	<p>
		<label>&nbsp;</label>
		<input type="submit" value="Envoyer" name="B1">
	</p>
</form>
<p>
  <?php } // fin formulaire ?>
 
</p>
<p>&nbsp;</p>
</body>
</html>
J'ai créé un formulaire mais je n'arrive pas a y ajouter une liste déroulante permettant de sélectionner le destinataire.
Je voudrais y ajouter une liste déroulante (la liste déroulante afficherait que le nom du destinataire et non sont adresse afin de diffuser celle-ci. Les infos sont issu de la table "destinataire") dans laquelle l'utilisateur sélectionnerez le nom du destinataire et quand il cliquerez sur le bouton "envoi" le serveur enverrait le mail issu du formulaire à l'adresse du destinataire sélectionné et une copie des informations saisie serait enregistrée dans la table "formulaire".

Quelqu'un pourrait il m'apporter son aide, un conseil, une remarque, une idée, … SVP Merci

Bonne fin de journée

Raphael