Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/08/2011, 09h57   #1
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
Par défaut Mysql conserver les données après un retour de page

Bonjour,
je souhaite conserver les données saisies dans un formulaire d'inscription, après un "submit", afin de les réutiliser si la saisie est incorrecte (que les donneés ne soient pas effacées par le retour en arrière...)
Merci.

Voici mes codes :

pdf_inscription.php :
Code :
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
<?php session_start();
require ("configuration.php"); //accès à la base de données
$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'"); 
$result = mysql_fetch_array ($requete);
$id = $result['id'];
$pseudo = $result['pseudo'];
$mail = $result['mail'];
// si l'utilisateur est connecté, c'est le bandeau membre sinon c'est le bandeau classique...
if (!isset($_SESSION['pseudo']) || $_SESSION['pseudo']=='')
{	// bandeau classique si pas connecté
	$bandeau = 'bandeau.php';	}
else
{	// bandeau membre si connecté
	$bandeau = 'bandeau_membres.php';	}
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
<title>MON SITE</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<!-- début de la vérification si tout est saisi -->
<script type="text/javascript">
function valide(txt, err_id)
{ document.getElementById(err_id).innerHTML= (txt.value=="") ? "Attention &agrave; bien remplir toutes les cases !" : "&nbsp;"; }
</script>
<!-- fin de la vérification si tout est saisi -->
</head>
<body>
<?php include($bandeau); ?> <!-- insère le bandeau principal en haut en fonction de la connexion -->
<div id="mainContent">
 
<form name="form1" method="post" action="pdf_inscription2.php">
<p />
<br />
<fieldset><legend> &nbsp; Inscription</legend>
 
<label for="pseudo">Pseudo &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="1" name="pseudo" value="<?php echo $_POST['pseudo']; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="mdp">Mot de Passe &nbsp; : &nbsp;</label>
<br />
<input type="password" tabindex="2" name="mdp" value="<?php echo $_POST['mdp']; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="mdp">Retapez votre mot de passe &nbsp; : &nbsp;</label>
<br />
<input type="password" tabindex="3" name="verif_mdp" value="<?php echo $_POST['verif_mdp']; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="mail">Votre E-Mail &nbsp; : &nbsp;</label>
<br />
<input type="text" tabindex="4" name="mail" value="<?php echo $_POST['mail']; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="nom">Nom &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="5" name="nom" value="<?php echo $_POST['nom']; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="prenom">Pr&eacute;nom &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="6" name="prenom" value="<?php echo $_POST['prenom']; ?>"  onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="ville">Ville &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="8" name="ville" value="<?php echo $_POST['ville']; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="naissance">Date de Naissance &nbsp; : &nbsp;</label>
<br />
<br />
 <?php
// connexion à la base
// require("configuration.php"); déjà au-dessus
// $sql = connect_sql(); déjà au-dessus
// début de la première requête sur les jours
echo '<label>'.'Jour &nbsp; : &nbsp; '.'</label>';
echo '<br />';
echo '<select name="jour2" class="jj" tabindex="9" onfocus="this.className=\'jj_focus\';" onblur="this.className=\'jj\';">';
$affich_form3 = "SELECT * FROM jours" ;
$resultat3 = mysql_query($affich_form3) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($resultat3);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat3) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list = mysql_fetch_array( $resultat3 ) )
{
echo '<option value="'.$list['jour'].'">'.$list['jour'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
echo '<br />';
// fin de la première requête sur les jours
 
// début de la deuxième requête sur les mois
echo '<label>'.'Mois &nbsp; : &nbsp; '.'</label>';
echo '<br />';
echo '<select name="mois2" class="mm" tabindex="10" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">';
$affich_form4 = "SELECT * FROM mois" ;
$resultat4 = mysql_query($affich_form4) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($resultat4);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat4) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list = mysql_fetch_array( $resultat4 ) )
{
echo '<option value="'.$list['Nb'].'">'.$list['mois'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la deuxième requête sur les mois
echo '<br />';
 
// début de la troisième requête sur les années
echo '<label>'.'Ann&eacute;e &nbsp; : &nbsp; '.'</label>';
echo '<br />';
echo '<select name="annee2" class="mm" tabindex="10" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">';
$affich_form5 = "SELECT * FROM annee ORDER BY an DESC" ;
$resultat5 = mysql_query($affich_form5) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($resultat5);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat5) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list = mysql_fetch_array( $resultat5 ) )
{
echo '<option value="'.$list['an'].'">'.$list['an'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la troisième requête sur les années
?>
<br /><br />
<input type="submit" tabindex="10" name="Submit" value="Inscription" />
</fieldset>
</form>
<?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->
</body>
</html>
pdf_inscription2.php (action du "submit") :
Code :
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
<?php
session_start(); //On démarre une session
require("configuration.php"); //On insert le fichier qui contient les informations
// si l'utilisateur est connecté, c'est le bandeau membre sinon c'est le bandeau classique...
if (!isset($_SESSION['pseudo']) || $_SESSION['pseudo']=='')
{	// bandeau classique si pas connecté
	$bandeau = 'bandeau.php';	}
else
{	// bandeau membre si connecté
	$bandeau = 'bandeau_membres.php';	}
// on remet en minuscules et on enlève les accents dans l'adresse mail
$mail2 = ($_POST['mail']);
$remplacements = array('à' => 'a','é' => 'e','è' => 'e','ù' => 'u','ê' => 'e','ô' => 'o'
,'A' => 'a','B' => 'b','C' => 'c','D' => 'd','E' => 'e','f' => 'f','G' => 'g','H' => 'h'
,'I' => 'i','J' => 'j','K' => 'k','L' => 'l','M' => 'm','N' => 'n','O' => 'o','P' => 'p'
,'Q' => 'q','R' => 'r','S' => 's','T' => 't','U' => 'u','V' => 'v','W' => 'w'
,'X' => 'x','Y' => 'y','Z' => 'z' );
$mail = strtr($mail2, $remplacements);
// requête pour récupérer la connexion ip du client
	$IPClient2= $_SERVER[REMOTE_ADDR] ;
    if (preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $mail)) //Verifie que l'email entrée n'est pas une fausse.
    {
		$chaine = "abcdefghijklmnopqrstuvwxyz0123456789"; 
		$confirm = str_shuffle($chaine); //On créé le code de confirmation
		//On recupère les informations saisies
		$pseudo2=($_POST['pseudo']);
		$mdp = ($_POST['mdp']);
		$verif_mdp = ($_POST['verif_mdp']);
		$nom = ($_POST['nom']);
		$prenom = ($_POST['prenom']);
		$ville = ($_POST['ville']);
		// création de la date au format date MySQL
		$born=$_POST['annee2'].'-'.$_POST['mois2'].'-'.$_POST['jour2'];
		$vote=0;
 
		$remplacements = array('à' => 'a','é' => 'e','è' => 'e','ù' => 'u','ê' => 'e','ô' => 'o'
		,'A' => 'a','B' => 'b','C' => 'c','D' => 'd','E' => 'e','f' => 'f','G' => 'g','H' => 'h'
		,'I' => 'i','J' => 'j','K' => 'k','L' => 'l','M' => 'm','N' => 'n','O' => 'o','P' => 'p'
		,'Q' => 'q','R' => 'r','S' => 's','T' => 't','U' => 'u','V' => 'v','W' => 'w'
		,'X' => 'x','Y' => 'y','Z' => 'z' );
		$pseudo = strtr($pseudo2, $remplacements);
 
		//On remet les dates au format français pour le mail
		setlocale (LC_TIME, 'fr_FR.UTF8');
		$born_mail = strftime("%A %d %B %Y",strtotime("$born"));
 
		/*On Fait la variable contenant le mail de confirmation*/
		header('Content-Type: text/html; charset=UTF-8');
		$message1 =  '<html>'.'<body>'.'Bonjour '.'<b>'.$pseudo.'</b>'.' et bienvenue sur '.$nom_site; 
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Vous venez de vous inscrire et nous sommes heureux de pouvoir vous compter aujourd\'hui parmi nos membres'; 
		$message1 .= '<br>'.'</br>';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<a href="' .$url_script. '/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '">Cliquer pour confirmer votre inscription</a>.</p>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Voici un rappel de vos identifiants, notez les pr&eacute;cieusement : ';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Pseudo : '.'<b>'.$pseudo.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Mot de passe : '.'<b>'.$mdp.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Mail : '.'<b>'.$mail.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Nom : '.'<b>'.$nom.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Pr&eacute;nom : '.'<b>'.$prenom.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Ville : '.'<b>'.$ville.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Date de naissance : '.'<b>'.$born_mail.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre &agrave; jour';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<br>'.'</br>';
		$message1 .= '&agrave; tr&egrave;s bient&ocirc;t sur le site !';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<a href="'.$url_site.'">MON SITE</a>.</p>';
 
		$sql = connect_sql(); //On se connecte à MySQL
		$verification = mysql_query("SELECT COUNT(*) FROM pdf_membre WHERE pseudo='$pseudo' OR mail='$mail'") or die (mysql_error());
		$donnees = mysql_fetch_array($verification)or die (mysql_error());
 
		if($donnees['COUNT(*)'] >= 1) //On verifie que le pseudo n'existe pas déjà
		{ 
		$reponse = 'Le pseudo ou l\'email est d&eacute;j&agrave; utilis&eacute;, merci d\'en choisir un(e) autre. <a href="javascript:history.back(1)">Retour au formulaire</a>';
		}
		else
		{	
			if( empty($pseudo) || empty($mdp) || empty($verif_mdp) || empty($mail) || empty($nom) || empty($prenom) ) //On verifie que les variables précédentes ne soient pas vide
			{
			$reponse = 'Un ou plusieurs champs ne sont pas remplis, <a href="javascript:history.back(1)">Retour au formulaire</a>';
			$message1 .= '<br>'.'</br>';
			$reponse .= ' pseudo : '.'<b>'.$pseudo.'</b>';
			$message1 .= '<br>'.'</br>';
			$reponse .= ' mot de passe : '.'<b>'.$mdp.'</b>';
			$message1 .= '<br>'.'</br>';
			$reponse .= ' verif mot de passe: '.'<b>'.$verif_mdp.'</b>';
			$message1 .= '<br>'.'</br>';
			$reponse .= ' mail : '.'<b>'.$mail.'</b>';
			$message1 .= '<br>'.'</br>';
			$reponse .= ' nom : '.'<b>'.$nom.'</b>';
			$message1 .= '<br>'.'</br>';
			$reponse .= ' prenom : '.'<b>'.$prenom.'</b>';
			$message1 .= '<br>'.'</br>';
			$reponse .= ' naissance : '.'<b>'.$born_mail.'</b>';
			$message1 .= '<br>'.'</br>';
			}
			elseif( $mdp != $verif_mdp) //On verifie que les 2 pass sont identiques
			{
			$reponse = 'Les mots de passe ne sont pas identiques, <a href="javascript:history.back(1)">Retour au formulaire</a>';
			}
			else //Si tout est bon on entre les données dans la BDD et on envoit le mail
			{
			mysql_query("SET NAMES 'utf8'");
			mysql_query("INSERT INTO pdf_membre VALUES ('','$pseudo', '$mdp', '$mail', '$confirm', '$nom', '$prenom', '$ville', '$born', '$vote')");
			$reponse = '<strong>'.'Bravo, vous &ecirc;tes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail dans quelques instants pour activer votre compte'.'</strong>'.
			'</br>'.'<br>'.'</br>'.'<a href="' .$url_site. '">Retour &agrave; l\'Accueil</a>';
			$entete = "MIME-Version: 1.0\r\n";
			$entete .= "Content-type: text/html; charset=utf-8\r\n";
			$entete .= "From: <$email_admin>\r\n";
			$entete .= "Reply-To: $email_admin\r\n";
			mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login . ' ', $message1, $entete);
 
			// on envoie également le mail à l'administrateur
			header('Content-Type: text/html; charset=UTF-8');
			$message2 =  '<html>'.'<body>'.'Bonjour '.'</br>'.'<b>'.$pseudo.'</b>'.' vient de s inscrire sur '.$nom_site; 
			$message2 .= '<br>'.'</br>';
			$message2 .= 'Pseudo : '.'<b>'.$pseudo.'</b>'.'</br>';
			$message2 .= 'Mot de passe : '.'<b>'.$mdp.'</b>'.'</br>';
			$message2 .= 'Mail : '.'<b>'.$mail.'</b>'.'</br>';
			$message2 .= 'Nom : '.'<b>'.$nom.'</b>'.'</br>';
			$message2 .= 'Pr&eacute;nom : '.'<b>'.$prenom.'</b>'.'</br>';
			$message2 .= 'Ville : '.'<b>'.$ville.'</b>'.'</br>';
			$message2 .= 'Date de naissance : '.'<b>'.$born_mail.'</b>';
			$message2 .= '<br>'.'</br>';
			$message2 .= 'IP de connexion : '.'<b>'.$IPClient2.'</b>';
 
			$entete2 = "MIME-Version: 1.0\r\n";
			$entete2 .= "Content-type: text/html; charset=utf-8\r\n";
			$entete2 .= "From: <$email_admin>\r\n";
			$entete2 .= "Reply-To: $email_admin\r\n";
			mail($email_admin,'Nouvelle inscription sur ' .$nom_site. ' ' . $login . ' ', $message2, $entete2);
			}
		}
	mysql_close($sql); //On se deconnecte
	}
	else //Reponse si l'adresse e-mail est une fausse
	{
	$reponse = 'Votre adresse e-mail "' . $mail . '" n\'est pas correcte. <a href="javascript:history.back(1)">Retour au formulaire</a>';
	} 	
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
<title>MON SITE</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<?php include($bandeau); ?> <!-- insère le bandeau principal en haut en fonction de la connexion -->
<div id="mainContent">
<br />
<br />
<? echo $reponse; ?> <!-- On affiche la reponse de tout le code du dessus -->
</div>
<p />
<p />
<?php include('bas_de_page.php'); ?> <!-- insère le bandeau principal en haut -->
</body>
</html>
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 10h20   #2
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Bonjour,
la solution la plus simple est de mettre le formulaire et le traitement dans la même page.

Le principe (que j'utilise) :
Code :
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
<?php
// TRAITEMENT si formulaire envoyé
$validform = 0;
$msgerreur = '';
if(isset($_POST['boutonEnvoiFormulaire']) { // nom du bouton submit (en general)
	// recuperation des donnees
		$data1 = $_POST['$data1'];
		// [..........]
	// gestion d'erreur
	// si on rencontre une erreur => 
		// [..........]
		$validform = 2;
		$msgerreur .= '...........';
	// pas d'erreur ? => $validform = 1;
	if($validform != 2) $validform = 1;
	// si pas d'erreur => ON TRAITE
	if($validform == 1) 
	{
		// TRAITEMENT des donnees
		// [..........]
	}
	unset($_POST);
}
?>
 
<?php // affichage message d'erreur eventuel
if($validform == 2) 
{
?>
		<p><?php echo $msgerreur; ?></p>
 
<?php
}
?>
 
<?php // AFFICHAGE du formulaire
if($validform != 1) 
{
	// $validform = 0 -> c'est la 1ere fois qu'on arrive sur la page (tous les $data = '')
	// $validform = 2 -> erreur, donc RE-AFFICHAGE du formulaire, avec les $data récupérés
?>
		<!-- [.....formulaire.....] -->
		<input type="text" name="data1" value="<?php echo $data1; ?> />
		<!-- [..........] -->
<?php
}
?>
Et rien ne t'empêche de mettre la partie "traitement" dans un fichier externe, que tu mets juste en "include" ... (histoire de facilité la lisibilité des codes)
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 01/08/2011, 11h59   #3
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
j'ai modifié les codes mais j'ai le message d'erreur suivant :
Parse error: syntax error, unexpected '{' in pdf_inscription2.php on line 15

pdf_inscription.php :
Code :
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
<?php session_start();
require ("configuration.php"); //accès à la base de données
$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'"); 
$result = mysql_fetch_array ($requete);
$id = $result['id'];
$pseudo = $result['pseudo'];
$mail = $result['mail'];
// si l'utilisateur est connecté, c'est le bandeau membre sinon c'est le bandeau classique...
if (!isset($_SESSION['pseudo']) || $_SESSION['pseudo']=='')
{	// bandeau classique si pas connecté
	$bandeau = 'bandeau.php';	}
else
{	// bandeau membre si connecté
	$bandeau = 'bandeau_membres.php';	}
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
<title>MON SITE</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<!-- début de la vérification si tout est saisi -->
<script type="text/javascript">
function valide(txt, err_id)
{ document.getElementById(err_id).innerHTML= (txt.value=="") ? "Attention &agrave; bien remplir toutes les cases !" : "&nbsp;"; }
</script>
<!-- fin de la vérification si tout est saisi -->
</head>
<body>
<?php include($bandeau); ?> <!-- insère le bandeau principal en haut en fonction de la connexion -->
<div id="mainContent">
 
<form name="form1" method="post" action="pdf_inscription2.php">
<p />
<br />
<fieldset><legend> &nbsp; Inscription</legend>
<?php include('pdf_inscription2.php'); ?> <!-- insère le traitement du formulaire -->
 
<?php // AFFICHAGE du formulaire
if($validform != 1) 
{
	// $validform = 0 -> c'est la 1ere fois qu'on arrive sur la page (tous les $data = '')
	// $validform = 2 -> erreur, donc RE-AFFICHAGE du formulaire, avec les $data récupérés
?>
<label for="pseudo">Pseudo &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="1" name="pseudo" value="<?php echo $pseudo_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="mdp">Mot de Passe &nbsp; : &nbsp;</label>
<br />
<input type="password" tabindex="2" name="mdp" value="<?php echo $mdp_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="mdp">Retapez votre mot de passe &nbsp; : &nbsp;</label>
<br />
<input type="password" tabindex="3" name="verif_mdp" value="<?php echo $verif_mdp_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="mail">Votre E-Mail &nbsp; : &nbsp;</label>
<br />
<input type="text" tabindex="4" name="mail" value="<?php echo $mail_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="nom">Nom &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="5" name="nom" value="<?php echo $nom_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="prenom">Pr&eacute;nom &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="6" name="prenom" value="<?php echo $prenom_affiche; ?>"  onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="ville">Ville &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="8" name="ville" value="<?php echo $ville_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="naissance">Date de Naissance &nbsp; : &nbsp;</label>
<br />
<br />
 <?php
// connexion à la base
// require("configuration.php"); déjà au-dessus
// $sql = connect_sql(); déjà au-dessus
// début de la première requête sur les jours
echo '<label>'.'Jour &nbsp; : &nbsp; '.'</label>';
echo '<br />';
echo '<select name="jour2" class="jj" tabindex="9" onfocus="this.className=\'jj_focus\';" onblur="this.className=\'jj\';">';
$affich_form3 = "SELECT * FROM jours" ;
$resultat3 = mysql_query($affich_form3) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($resultat3);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat3) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list = mysql_fetch_array( $resultat3 ) )
{
echo '<option value="'.$list['jour'].'">'.$list['jour'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
echo '<br />';
// fin de la première requête sur les jours
 
// début de la deuxième requête sur les mois
echo '<label>'.'Mois &nbsp; : &nbsp; '.'</label>';
echo '<br />';
echo '<select name="mois2" class="mm" tabindex="10" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">';
$affich_form4 = "SELECT * FROM mois" ;
$resultat4 = mysql_query($affich_form4) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($resultat4);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat4) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list = mysql_fetch_array( $resultat4 ) )
{
echo '<option value="'.$list['Nb'].'">'.$list['mois'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la deuxième requête sur les mois
echo '<br />';
 
// début de la troisième requête sur les années
echo '<label>'.'Ann&eacute;e &nbsp; : &nbsp; '.'</label>';
echo '<br />';
echo '<select name="annee2" class="mm" tabindex="10" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">';
$affich_form5 = "SELECT * FROM annee ORDER BY an DESC" ;
$resultat5 = mysql_query($affich_form5) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($resultat5);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat5) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list = mysql_fetch_array( $resultat5 ) )
{
echo '<option value="'.$list['an'].'">'.$list['an'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la troisième requête sur les années
?>
<br /><br />
<input type="submit" tabindex="10" name="Submit" value="Inscription" />
</fieldset>
</form>
<?php
}
?>
<?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->
</body>
</html>
pdf_inscription2.php :
Code :
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
<?php
session_start(); //On démarre une session
// require("configuration.php"); //On insert le fichier qui contient les informations
// si l'utilisateur est connecté, c'est le bandeau membre sinon c'est le bandeau classique...
if (!isset($_SESSION['pseudo']) || $_SESSION['pseudo']=='')
{	// bandeau classique si pas connecté
	$bandeau = 'bandeau.php';	}
else
{	// bandeau membre si connecté
	$bandeau = 'bandeau_membres.php';	}
 
// TRAITEMENT si formulaire envoyé
$validform = 0;
$msgerreur = '';
if(isset($_POST['boutonEnvoiFormulaire']) {	// nom du bouton submit (en general)
// recuperation des donnees
//On recupère les informations saisies
$mail_affiche=($_POST['mail']);
$pseudo_affiche=($_POST['pseudo']);
$mdp_affiche = ($_POST['mdp']);
$verif_mdp_affiche = ($_POST['verif_mdp']);
$nom_affiche = ($_POST['nom']);
$prenom_affiche = ($_POST['prenom']);
$ville_affiche = ($_POST['ville']);
// gestion d'erreur si on rencontre une erreur
$validform = 2;
$msgerreur .= 'Erreur du formulaire ';
// pas d'erreur ? => $validform = 1;
if($validform != 2) $validform = 1;
// si pas d'erreur => ON TRAITE
if($validform == 1) 
{
 
// on remet en minuscules et on enlève les accents dans l'adresse mail
$mail2 = ($_POST['mail']);
$remplacements = array('à' => 'a','é' => 'e','è' => 'e','ù' => 'u','ê' => 'e','ô' => 'o'
,'A' => 'a','B' => 'b','C' => 'c','D' => 'd','E' => 'e','f' => 'f','G' => 'g','H' => 'h'
,'I' => 'i','J' => 'j','K' => 'k','L' => 'l','M' => 'm','N' => 'n','O' => 'o','P' => 'p'
,'Q' => 'q','R' => 'r','S' => 's','T' => 't','U' => 'u','V' => 'v','W' => 'w'
,'X' => 'x','Y' => 'y','Z' => 'z' );
$mail = strtr($mail2, $remplacements);
// requête pour récupérer la connexion ip du client
	$IPClient2= $_SERVER[REMOTE_ADDR] ;
    if (preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $mail)) //Verifie que l'email entrée n'est pas une fausse.
    {
		$chaine = "abcdefghijklmnopqrstuvwxyz0123456789"; 
		$confirm = str_shuffle($chaine); //On créé le code de confirmation
		//On recupère les informations saisies
		$pseudo2=($_POST['pseudo']);
		$mdp = ($_POST['mdp']);
		$verif_mdp = ($_POST['verif_mdp']);
		$nom = ($_POST['nom']);
		$prenom = ($_POST['prenom']);
		$ville = ($_POST['ville']);
		// création de la date au format date MySQL
		$born=$_POST['annee2'].'-'.$_POST['mois2'].'-'.$_POST['jour2'];
		$vote=0;
 
		$remplacements = array('à' => 'a','é' => 'e','è' => 'e','ù' => 'u','ê' => 'e','ô' => 'o'
		,'A' => 'a','B' => 'b','C' => 'c','D' => 'd','E' => 'e','f' => 'f','G' => 'g','H' => 'h'
		,'I' => 'i','J' => 'j','K' => 'k','L' => 'l','M' => 'm','N' => 'n','O' => 'o','P' => 'p'
		,'Q' => 'q','R' => 'r','S' => 's','T' => 't','U' => 'u','V' => 'v','W' => 'w'
		,'X' => 'x','Y' => 'y','Z' => 'z' );
		$pseudo = strtr($pseudo2, $remplacements);
 
		//On remet les dates au format français pour le mail
		setlocale (LC_TIME, 'fr_FR.UTF8');
		$born_mail = strftime("%A %d %B %Y",strtotime("$born"));
 
		/*On Fait la variable contenant le mail de confirmation*/
		header('Content-Type: text/html; charset=UTF-8');
		$message1 =  '<html>'.'<body>'.'Bonjour '.'<b>'.$pseudo.'</b>'.' et bienvenue sur '.$nom_site; 
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Vous venez de vous inscrire et nous sommes heureux de pouvoir vous compter aujourd\'hui parmi nos membres'; 
		$message1 .= '<br>'.'</br>';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<a href="' .$url_script. '/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '">Cliquer pour confirmer votre inscription</a>.</p>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Voici un rappel de vos identifiants, notez les pr&eacute;cieusement : ';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Pseudo : '.'<b>'.$pseudo.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Mot de passe : '.'<b>'.$mdp.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Mail : '.'<b>'.$mail.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Nom : '.'<b>'.$nom.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Pr&eacute;nom : '.'<b>'.$prenom.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Ville : '.'<b>'.$ville.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Date de naissance : '.'<b>'.$born_mail.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre &agrave; jour';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<br>'.'</br>';
		$message1 .= '&agrave; tr&egrave;s bient&ocirc;t sur le site !';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<a href="'.$url_site.'">MON SITE</a>.</p>';
 
		// $sql = connect_sql(); //On se connecte à MySQL
		$verification = mysql_query("SELECT COUNT(*) FROM pdf_membre WHERE pseudo='$pseudo' OR mail='$mail'") or die (mysql_error());
		$donnees = mysql_fetch_array($verification)or die (mysql_error());
 
		if($donnees['COUNT(*)'] >= 1) //On verifie que le pseudo n'existe pas déjà
		{ 
		$reponse = 'Le pseudo ou l\'email est d&eacute;j&agrave; utilis&eacute;, merci d\'en choisir un(e) autre. <a href="javascript:history.back(1)">Retour au formulaire</a>';
		}
		else
		{	
			if( empty($pseudo) || empty($mdp) || empty($verif_mdp) || empty($mail) || empty($nom) || empty($prenom) || empty($ville) ) //On verifie que les variables précédentes ne soient pas vide
			{
			$reponse = 'Un ou plusieurs champs ne sont pas remplis :';
			$reponse .= '<br>'.'</br>';
			$reponse .= '<a href="javascript:history.back(1)">Retour au formulaire</a>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Pseudo : '.'<b>'.$pseudo.'</b>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Mail : '.'<b>'.$mail.'</b>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Nom : '.'<b>'.$nom.'</b>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Pr&eacute;nom : '.'<b>'.$prenom.'</b>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Ville : '.'<b>'.$ville.'</b>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Date de naissance : '.'<b>'.$born_mail.'</b>';
			$reponse .= '<br>'.'</br>';
			}
			elseif( $mdp != $verif_mdp) //On verifie que les 2 pass sont identiques
			{
			$reponse = 'Les mots de passe ne sont pas identiques, <a href="javascript:history.back(1)">Retour au formulaire</a>';
			}
			else //Si tout est bon on entre les données dans la BDD et on envoit le mail
			{
			mysql_query("SET NAMES 'utf8'");
			mysql_query("INSERT INTO pdf_membre VALUES ('','$pseudo', '$mdp', '$mail', '$confirm', '$nom', '$prenom', '$ville', '$born', '$vote')");
			$reponse = '<strong>'.'Bravo, vous &ecirc;tes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail dans quelques instants pour activer votre compte'.'</strong>'.
			'</br>'.'<br>'.'</br>'.'<a href="' .$url_site. '">Retour &agrave; l\'Accueil</a>';
			$entete = "MIME-Version: 1.0\r\n";
			$entete .= "Content-type: text/html; charset=utf-8\r\n";
			$entete .= "From: <$email_admin>\r\n";
			$entete .= "Reply-To: $email_admin\r\n";
			mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login . ' ', $message1, $entete);
 
			// on envoie également le mail à l'administrateur
			header('Content-Type: text/html; charset=UTF-8');
			$message2 =  '<html>'.'<body>'.'Bonjour '.'</br>'.'<b>'.$pseudo.'</b>'.' vient de s inscrire sur '.$nom_site; 
			$message2 .= '<br>'.'</br>';
			$message2 .= 'Pseudo : '.'<b>'.$pseudo.'</b>'.'</br>';
			$message2 .= 'Mot de passe : '.'<b>'.$mdp.'</b>'.'</br>';
			$message2 .= 'Mail : '.'<b>'.$mail.'</b>'.'</br>';
			$message2 .= 'Nom : '.'<b>'.$nom.'</b>'.'</br>';
			$message2 .= 'Pr&eacute;nom : '.'<b>'.$prenom.'</b>'.'</br>';
			$message2 .= 'Ville : '.'<b>'.$ville.'</b>'.'</br>';
			$message2 .= 'Date de naissance : '.'<b>'.$born_mail.'</b>';
			$message2 .= '<br>'.'</br>';
			$message2 .= 'IP de connexion : '.'<b>'.$IPClient2.'</b>';
 
			$entete2 = "MIME-Version: 1.0\r\n";
			$entete2 .= "Content-type: text/html; charset=utf-8\r\n";
			$entete2 .= "From: <$email_admin>\r\n";
			$entete2 .= "Reply-To: $email_admin\r\n";
			mail($email_admin,'Nouvelle inscription sur ' .$nom_site. ' ' . $login . ' ', $message2, $entete2);
			}
		}
	mysql_close($sql); //On se deconnecte
	}
	else //Reponse si l'adresse e-mail est une fausse
	{
	$reponse = 'Votre adresse e-mail "' . $mail . '" n\'est pas correcte. <a href="javascript:history.back(1)">Retour au formulaire</a>';
	} 	
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
<title>MON SITE</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<?php include($bandeau); ?> <!-- insère le bandeau principal en haut en fonction de la connexion -->
<div id="mainContent">
<br />
<br />
<? echo $reponse; ?> <!-- On affiche la reponse de tout le code du dessus -->
</div>
<p />
<p />
<?php include('bas_de_page.php'); ?> <!-- insère le bandeau principal en haut -->
</body>
</html>
 
<?php
}
unset($_POST);
}
// affichage message d'erreur eventuel
if($validform == 2) 
{
?>
<p><?php echo $msgerreur; ?></p> 
<?php
}
?>
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 12h47   #4
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
- Enlève le session_start() ; du fichier pdf_inscription2.php
car il est en "include" dans pdf_inscription.php, qui contient déjà session_start() ;
Code :
Parse error: syntax error, unexpected '{' in pdf_inscription2.php on line 15
Une accolade en trop ou manquante ?
Il suffit de la trouver... ligne 15 (?)
... ou peut-être une ) manquante juste avant ?
Code :
if(isset($_POST['boutonEnvoiFormulaire'])) {	// nom du bouton submit (en general)
Autre chose :
-> pourquoi mettre les $_POST entre paranthèses (inutiles) ??
Code :
$nom = ($_POST['nom']);
Cela dit, test en tapant (par exemple) comme nom : " c'est <moi> ! "
Tu verras que tu auras sûrement besoin de traiter les données recues :
Code :
$nom = htmlentities(stripslashes(trim($_POST['nom'])));
stripslashes()) ou pas ? Ca dépend du traitement qui suis...
Dans ton cas, je ne le mettrai pas (car les données sont écrites dans ta variable $message1)

Enfin, ton "remplacement de caractères" peut se faire comme ca :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
function remplacements($chaine)
{
 
	$sans_accent 	= "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÒÓÔÕÖŒØÙÚÛÜÝàáâãäåæçèéêëìíîïðòóôõöùúûüýÿÑñŠšœ ";
	$avec_accent 	= "AAAAAAACEEEEIIIIOOOOOOOUUUUYaaaaaaaceeeeiiiioooooouuuuyynnsso-";
	$chaine 	= strtolower(trim($chaine)); // en minuscule
	$chaine 	= strtr($chaine, $sans_accent, $avec_accent);
}
// [ ......... ]
$mail2 = $_POST['mail'];
$mail = remplacements($mail2);
?>
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 13h13   #5
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
il manquait une parenthèse, j'ai modifié en ligne 15 :
Code :
if(isset($_POST['boutonEnvoiFormulaire'])) {	// nom du bouton submit (en general)
par contre, quand je clique sur "Inscription" il me renvoie vers une page blanche
(.../pdf_inscription2.php ... et pas de message d'erreur ! ) ...
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 13h22   #6
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Ton fichier pdf_inscription2.php est en "include" -> il faut donc l'ADAPTER !
(balises html à enlever, ....car déjà dans pdf_inscription.php, ...)
Remets le code de pdf_inscription2.php une fois que tu l'auras corrigée, ok?

Ton fichier pdf_inscription.php est aussi zarbi !
- améliore l'indentation, qu'on puisse le lire plus facilement
- <p /> ??
Code :
1
2
3
4
5
6
7
8
<?php include('pdf_inscription2.php'); ?> <!-- insère le traitement du formulaire -->
 
<?php // AFFICHAGE du formulaire
if($validform != 1) 
{
	// $validform = 0 -> c'est la 1ere fois qu'on arrive sur la page (tous les $data = '')
	// $validform = 2 -> erreur, donc RE-AFFICHAGE du formulaire, avec les $data récupérés
?>
-> doit se trouver avant la balise <form>
- ...

Bref : c'est le souk dans ton fichier !
- remets les choses à la bonne place,
- écrit proprement tes fichiers (indentation, formulaire, ...)
Et ca ira bien mieux !
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 14h36   #7
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
@ jreaux62 :
j'ai essayé de mettre tout sur une même page, mais quand je clique sur "Inscription", tout s'efface et il n'y pas d'autre action....
je suis un cas désespéré...
c'est pas le "POST" qui pose problème ?
Merci...

code pdf_inscription corrigé :
Code :
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
<?php session_start();
require ("configuration.php"); //accès à la base de données
$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'"); 
$result = mysql_fetch_array ($requete);
$id = $result['id'];
$pseudo = $result['pseudo'];
$mail = $result['mail'];
// si l'utilisateur est connecté, c'est le bandeau membre sinon c'est le bandeau classique...
if (!isset($_SESSION['pseudo']) || $_SESSION['pseudo']=='')
{	// bandeau classique si pas connecté
	$bandeau = 'bandeau.php';	}
else
{	// bandeau membre si connecté
	$bandeau = 'bandeau_membres.php';	}
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
<title>MON SITE</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<!-- début de la vérification si tout est saisi -->
<script type="text/javascript">
function valide(txt, err_id)
{ document.getElementById(err_id).innerHTML= (txt.value=="") ? "Attention &agrave; bien remplir toutes les cases !" : "&nbsp;"; }
</script>
<!-- fin de la vérification si tout est saisi -->
</head>
 
<body>
 
<?php include($bandeau); ?> <!-- insère le bandeau principal en haut en fonction de la connexion -->
 
<div id="mainContent">
 
<?php
// TRAITEMENT si formulaire envoyé
$validform = 0;
$msgerreur = '';
if(isset($_POST['boutonEnvoiFormulaire'])) {	// nom du bouton submit (en general)
// recuperation des donnees
//On recupère les informations saisies
$mail_affiche= $_POST['mail'];
$pseudo_affiche= $_POST['pseudo'];
$mdp_affiche = $_POST['mdp'];
$verif_mdp_affiche = $_POST['verif_mdp'];
$nom_affiche = $_POST['nom'];
$prenom_affiche = $_POST['prenom'];
$ville_affiche = $_POST['ville'];
// gestion d'erreur si on rencontre une erreur
$validform = 2;
$msgerreur .= 'Erreur du formulaire ';
// pas d'erreur ? => $validform = 1;
if($validform != 2) $validform = 1;
// si pas d'erreur => ON TRAITE
if($validform == 1) 
{
 
// on remet en minuscules et on enlève les accents dans l'adresse mail
$mail2 = ($_POST['mail']);
$remplacements = array('à' => 'a','é' => 'e','è' => 'e','ù' => 'u','ê' => 'e','ô' => 'o'
,'A' => 'a','B' => 'b','C' => 'c','D' => 'd','E' => 'e','f' => 'f','G' => 'g','H' => 'h'
,'I' => 'i','J' => 'j','K' => 'k','L' => 'l','M' => 'm','N' => 'n','O' => 'o','P' => 'p'
,'Q' => 'q','R' => 'r','S' => 's','T' => 't','U' => 'u','V' => 'v','W' => 'w'
,'X' => 'x','Y' => 'y','Z' => 'z' );
$mail = strtr($mail2, $remplacements);
// requête pour récupérer la connexion ip du client
	$IPClient2= $_SERVER[REMOTE_ADDR] ;
    if (preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $mail)) //Verifie que l'email entrée n'est pas une fausse.
    {
		$chaine = "abcdefghijklmnopqrstuvwxyz0123456789"; 
		$confirm = str_shuffle($chaine); //On créé le code de confirmation
		//On recupère les informations saisies
		$pseudo2=($_POST['pseudo']);
		$mdp = ($_POST['mdp']);
		$verif_mdp = ($_POST['verif_mdp']);
		$nom = ($_POST['nom']);
		$prenom = ($_POST['prenom']);
		$ville = ($_POST['ville']);
		// création de la date au format date MySQL
		$born=$_POST['annee2'].'-'.$_POST['mois2'].'-'.$_POST['jour2'];
		$vote=0;
 
		$remplacements = array('à' => 'a','é' => 'e','è' => 'e','ù' => 'u','ê' => 'e','ô' => 'o'
		,'A' => 'a','B' => 'b','C' => 'c','D' => 'd','E' => 'e','f' => 'f','G' => 'g','H' => 'h'
		,'I' => 'i','J' => 'j','K' => 'k','L' => 'l','M' => 'm','N' => 'n','O' => 'o','P' => 'p'
		,'Q' => 'q','R' => 'r','S' => 's','T' => 't','U' => 'u','V' => 'v','W' => 'w'
		,'X' => 'x','Y' => 'y','Z' => 'z' );
		$pseudo = strtr($pseudo2, $remplacements);
 
		//On remet les dates au format français pour le mail
		setlocale (LC_TIME, 'fr_FR.UTF8');
		$born_mail = strftime("%A %d %B %Y",strtotime("$born"));
 
		/*On Fait la variable contenant le mail de confirmation*/
		header('Content-Type: text/html; charset=UTF-8');
		$message1 =  '<html>'.'<body>'.'Bonjour '.'<b>'.$pseudo.'</b>'.' et bienvenue sur '.$nom_site; 
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Vous venez de vous inscrire et nous sommes heureux de pouvoir vous compter aujourd\'hui parmi nos membres'; 
		$message1 .= '<br>'.'</br>';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<a href="' .$url_script. '/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '">Cliquer pour confirmer votre inscription</a>.</p>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Voici un rappel de vos identifiants, notez les pr&eacute;cieusement : ';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Pseudo : '.'<b>'.$pseudo.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Mot de passe : '.'<b>'.$mdp.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Mail : '.'<b>'.$mail.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Nom : '.'<b>'.$nom.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Pr&eacute;nom : '.'<b>'.$prenom.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Ville : '.'<b>'.$ville.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Votre Date de naissance : '.'<b>'.$born_mail.'</b>';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<br>'.'</br>';
		$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre &agrave; jour';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<br>'.'</br>';
		$message1 .= '&agrave; tr&egrave;s bient&ocirc;t sur le site !';
		$message1 .= '<br>'.'</br>';
		$message1 .= '<a href="'.$url_site.'">MON SITE</a>.</p>';
 
		$verification = mysql_query("SELECT COUNT(*) FROM pdf_membre WHERE pseudo='$pseudo' OR mail='$mail'") or die (mysql_error());
		$donnees = mysql_fetch_array($verification)or die (mysql_error());
 
		if($donnees['COUNT(*)'] >= 1) //On verifie que le pseudo n'existe pas déjà
		{ 
		$reponse = 'Le pseudo ou l\'email est d&eacute;j&agrave; utilis&eacute;, merci d\'en choisir un(e) autre. <a href="javascript:history.back(1)">Retour au formulaire</a>';
		}
		else	//On verifie que les variables précédentes ne soient pas vide
		{	
			if( empty($pseudo) || empty($mdp) || empty($verif_mdp) || empty($mail) || empty($nom) || empty($prenom) || empty($ville) ) 
			{
			$reponse = 'Un ou plusieurs champs ne sont pas remplis :';
			$reponse .= '<br>'.'</br>';
			$reponse .= '<a href="javascript:history.back(1)">Retour au formulaire</a>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Pseudo : '.'<b>'.$pseudo.'</b>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Mail : '.'<b>'.$mail.'</b>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Nom : '.'<b>'.$nom.'</b>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Pr&eacute;nom : '.'<b>'.$prenom.'</b>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Ville : '.'<b>'.$ville.'</b>';
			$reponse .= '<br>'.'</br>';
			$reponse .= 'Date de naissance : '.'<b>'.$born_mail.'</b>';
			$reponse .= '<br>'.'</br>';
			}
			elseif( $mdp != $verif_mdp) //On verifie que les 2 pass sont identiques
			{
			$reponse = 'Les mots de passe ne sont pas identiques, <a href="javascript:history.back(1)">Retour au formulaire</a>';
			}
			else //Si tout est bon on entre les données dans la BDD et on envoit le mail
			{
			mysql_query("SET NAMES 'utf8'");
			mysql_query("INSERT INTO pdf_membre VALUES ('','$pseudo', '$mdp', '$mail', '$confirm', '$nom', '$prenom', '$ville', '$born', '$vote')");
			$reponse = '<strong>'.'Bravo, vous &ecirc;tes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail dans quelques instants pour activer votre compte'.'</strong>'.
			'</br>'.'<br>'.'</br>'.'<a href="' .$url_site. '">Retour &agrave; l\'Accueil</a>';
			$entete = "MIME-Version: 1.0\r\n";
			$entete .= "Content-type: text/html; charset=utf-8\r\n";
			$entete .= "From: <$email_admin>\r\n";
			$entete .= "Reply-To: $email_admin\r\n";
			mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login . ' ', $message1, $entete);
			// on envoie également le mail à l'administrateur
			header('Content-Type: text/html; charset=UTF-8');
			$message2 =  '<html>'.'<body>'.'Bonjour '.'</br>'.'<b>'.$pseudo.'</b>'.' vient de s inscrire sur '.$nom_site; 
			$message2 .= '<br>'.'</br>';
			$message2 .= 'Pseudo : '.'<b>'.$pseudo.'</b>'.'</br>';
			$message2 .= 'Mot de passe : '.'<b>'.$mdp.'</b>'.'</br>';
			$message2 .= 'Mail : '.'<b>'.$mail.'</b>'.'</br>';
			$message2 .= 'Nom : '.'<b>'.$nom.'</b>'.'</br>';
			$message2 .= 'Pr&eacute;nom : '.'<b>'.$prenom.'</b>'.'</br>';
			$message2 .= 'Ville : '.'<b>'.$ville.'</b>'.'</br>';
			$message2 .= 'Date de naissance : '.'<b>'.$born_mail.'</b>';
			$message2 .= '<br>'.'</br>';
			$message2 .= 'IP de connexion : '.'<b>'.$IPClient2.'</b>';
			$entete2 = "MIME-Version: 1.0\r\n";
			$entete2 .= "Content-type: text/html; charset=utf-8\r\n";
			$entete2 .= "From: <$email_admin>\r\n";
			$entete2 .= "Reply-To: $email_admin\r\n";
			mail($email_admin,'Nouvelle inscription sur ' .$nom_site. ' ' . $login . ' ', $message2, $entete2);
			}
		}  //fin si c'est bien rempli
 
	mysql_close($sql); //On se deconnecte
	}
	else //Reponse si l'adresse e-mail est une fausse
	{
	$reponse = 'Votre adresse e-mail "' . $mail . '" n\'est pas correcte. <a href="javascript:history.back(1)">Retour au formulaire</a>';
	} 	
 
	echo $reponse; // On affiche la reponse de tout le code du dessus
 
} // FIN de if($validform == 1) 
unset($_POST);
} // FIN de isset $_POST 'EnvoiFormulaire'...
 
// affichage message d'erreur eventuel
if($validform == 2) {
	echo $msgerreur;}
// AFFICHAGE du formulaire
if($validform != 1) {
	// $validform = 0 -> c'est la 1ere fois qu'on arrive sur la page (tous les $data = '')
	// $validform = 2 -> erreur, donc RE-AFFICHAGE du formulaire, avec les $data récupérés
?>
 
<p />
 
<form action="<?$PHP_SELF;?>" method="post" />
<br />
<fieldset><legend> &nbsp; Inscription</legend>
 
<label for="pseudo">Pseudo &nbsp; : &nbsp;</label><br />
<input type="text" tabindex="1" name="pseudo" value="<?php echo $pseudo_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="mdp">Mot de Passe &nbsp; : &nbsp;</label>
<br />
<input type="password" tabindex="2" name="mdp" value="<?php echo $mdp_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="mdp">Retapez votre mot de passe &nbsp; : &nbsp;</label>
<br />
<input type="password" tabindex="3" name="verif_mdp" value="<?php echo $verif_mdp_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="mail">Votre E-Mail &nbsp; : &nbsp;</label>
<br />
<input type="text" tabindex="4" name="mail" value="<?php echo $mail_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="nom">Nom &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="5" name="nom" value="<?php echo $nom_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="prenom">Pr&eacute;nom &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="6" name="prenom" value="<?php echo $prenom_affiche; ?>"  onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="ville">Ville &nbsp; : &nbsp;</label> 
<br />
<input type="text" tabindex="8" name="ville" value="<?php echo $ville_affiche; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<label for="naissance">Date de Naissance &nbsp; : &nbsp;</label>
<br />
<br />
 
 <?php
// début de la première requête sur les jours
echo '<label>'.'Jour &nbsp; : &nbsp; '.'</label>';
echo '<br />';
echo '<select name="jour2" class="jj" tabindex="9" onfocus="this.className=\'jj_focus\';" onblur="this.className=\'jj\';">';
$affich_form3 = "SELECT * FROM jours" ;
$resultat3 = mysql_query($affich_form3) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($resultat3);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat3) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list = mysql_fetch_array( $resultat3 ) )
{
echo '<option value="'.$list['jour'].'">'.$list['jour'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
echo '<br />';
// fin de la première requête sur les jours
 
// début de la deuxième requête sur les mois
echo '<label>'.'Mois &nbsp; : &nbsp; '.'</label>';
echo '<br />';
echo '<select name="mois2" class="mm" tabindex="10" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">';
$affich_form4 = "SELECT * FROM mois" ;
$resultat4 = mysql_query($affich_form4) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($resultat4);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat4) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list = mysql_fetch_array( $resultat4 ) )
{
echo '<option value="'.$list['Nb'].'">'.$list['mois'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la deuxième requête sur les mois
echo '<br />';
 
// début de la troisième requête sur les années
echo '<label>'.'Ann&eacute;e &nbsp; : &nbsp; '.'</label>';
echo '<br />';
echo '<select name="annee2" class="mm" tabindex="10" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">';
$affich_form5 = "SELECT * FROM annee ORDER BY an DESC" ;
$resultat5 = mysql_query($affich_form5) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($resultat5);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat5) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list = mysql_fetch_array( $resultat5 ) )
{
echo '<option value="'.$list['an'].'">'.$list['an'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la troisième requête sur les années
?>
<br /><br />
<input type="submit" tabindex="10" name="Submit" value="Inscription" />
</fieldset>
</form>
<?php
}
?>
 
<br /><br />
 
<?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->
 
</body>
 
</html>
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 14h52   #8
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Citation:
Envoyé par fazpedro Voir le message
je suis un cas désespéré...
c'est pas le "POST" qui pose problème ?
Ce qui pose surtout problème, c'est que tu n'as tenu aucun compte de mes messages !
Ton code est toujours aussi "sale" !
- mets des tabulations !!
- encore <p /> ...

Je veux bien t'aider, mais fait un effort d'écriture (de ton fichier) ...

Normal qu'il ne se passe rien :
Code :
if(isset($_POST['boutonEnvoiFormulaire'])) {	// nom du bouton submit (en general)
Code :
<input type="submit" tabindex="10" name="Submit" value="Inscription" />
-> Ce serait mieux de mettre le même nom ...

Quand dans mon code j'écris :
Code :
1
2
	// gestion d'erreur si on rencontre une erreur
	// [.........]
-> c'est LA qu'il faut faire les TESTS d'erreur ! : vérification de l'email, des champs obligatoires, ...
-> SI (et seulement SI !) erreur :
Code :
1
2
 	$validform = 2;
	$msgerreur .= 'Erreur du formulaire ';
Il faut quand même que tu essaies de comprendre un minimum ce que tu fais !
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 01/08/2011, 15h57   #9
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Essaye avec ca :
Code :
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
<?php session_start();
require ("configuration.php"); //accès à la base de données
$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'"); 
$result = mysql_fetch_array ($requete);
$id = $result['id'];
$pseudo = $result['pseudo'];
$mail = $result['mail'];
// si l'utilisateur est connecté, c'est le bandeau membre sinon c'est le bandeau classique...
if (!isset($_SESSION['pseudo']) || $_SESSION['pseudo']=='')
{	// bandeau classique si pas connecté
	$bandeau = 'bandeau.php';	}
else
{	// bandeau membre si connecté
	$bandeau = 'bandeau_membres.php';	}
?>
 
<?php // fonction de remplacement de caracteres
// ==> CETTE FONCTION PEUT ETRE DANS UN FICHIER EXTERNE, et appelée par include
function remplacements($chaine)
{
	$sans_accent 	= "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÒÓÔÕÖŒØÙÚÛÜÝàáâãäåæçèéêëìíîïðòóôõöùúûüýÿÑñŠšœ ";
	$avec_accent 	= "AAAAAAACEEEEIIIIOOOOOOOUUUUYaaaaaaaceeeeiiiioooooouuuuyynnsso-";
	$chaine 		= strtolower(trim($chaine)); // en minuscule
	$chaine 		= strtr($chaine, $sans_accent, $avec_accent);
}
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
	<title>MON SITE</title>
	<link rel="stylesheet" type="text/css" href="style.css" />
	<!-- début de la vérification si tout est saisi -->
	<script type="text/javascript">
	function valide(txt, err_id)
	{ document.getElementById(err_id).innerHTML = (txt.value=="") ? "Attention &agrave; bien remplir toutes les cases !" : "&nbsp;"; }
	</script>
	<!-- fin de la vérification si tout est saisi -->
</head>
 
<body>
 
<?php include($bandeau); ?> <!-- insère le bandeau principal en haut en fonction de la connexion -->
 
<div id="mainContent">
 
<?php
$validform = 0;
$msgerreur = '';
$reponse = '';
// -------------------------------
// TRAITEMENT si formulaire envoyé
// -------------------------------
if( isset($_POST['boutonEnvoiFormulaire']) ) 
{
	// -----------------------------------------
	// 1- RECUPERATION DES DONNEES DU FORMULAIRE
	// -----------------------------------------
	$mail		= $_POST['mail'];
	$pseudo		= $_POST['pseudo'];
	$mdp 		= $_POST['mdp'];
	$verif_mdp 	= $_POST['verif_mdp'];
	$nom 		= $_POST['nom'];
	$prenom 	= $_POST['prenom'];
	$ville 		= $_POST['ville'];
	// -----------------------------------------
	// 2- GESTION des ERREURS
	// -----------------------------------------
	// On verifie les champs obligatoires
	if ($mail=='' || $pseudo=='' || $mdp=='' || $verif_mdp=='' || $nom=='' || $prenom=='' || $ville=='') 
	{
		if ($mail=='') {		$msgerreur .= 'Champ obligatoire : email<br />'; }
		if ($pseudo=='') {		$msgerreur .= 'Champ obligatoire : Pseudo<br />'; }
		if ($mdp=='') {			$msgerreur .= 'Champ obligatoire : Mot de passe<br />'; }
		if ($verif_mdp=='') {	$msgerreur .= 'Champ obligatoire : Confirmation du mot de passe<br />'; }
		if ($nom=='') {			$msgerreur .= 'Champ obligatoire : Nom<br />'; }
		if ($prenom=='') {		$msgerreur .= 'Champ obligatoire : Prenom<br />'; }
		if ($ville=='') {		$msgerreur .= 'Champ obligatoire : Ville<br />'; }
		$validform 	= 2;
	}
	// On verifie que les 2 mots de passe sont identiques
	if ($mdp!=$verif_mdp) {
		$msgerreur .= 'Les 2 mots de passe ne sont pas identiques<br />';
		$validform 	= 2;
	}
	// On verifie la validite de l'email
	if (!preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $mail)) {
		$msgerreur .= 'Adresse Email non valide : doit être de la forme xxxx@xxx.xx<br />';
		$validform 	= 2;
	}
	// On verifie que le mail et le pseudo ne sont pas deja pris
	$verification = mysql_query("SELECT COUNT(*) AS NbreVerif FROM pdf_membre 
					WHERE pseudo = '".mysql_real_escape_string($pseudo)."' 
					OR mail = '".mysql_real_escape_string($mail)."';") or die (mysql_error());
	$donnees = mysql_fetch_array($verification)or die (mysql_error());
	if($donnees['NbreVerif'] > 0) // On verifie que le pseudo n'existe pas déjà
	{ 
		$msgerreur .= 'Le pseudo ou l\'email est d&eacute;j&agrave; utilis&eacute;, merci d\'en choisir un(e) autre.<br />';
		$validform 	= 2;
	}
 
	// pas d'erreur ?
	if($validform != 2) $validform = 1;
	// -----------------------------------------
	// 3- si pas d'erreur => TRAITEMENT
	// -----------------------------------------
	if($validform == 1) 
	{
		// on remet en minuscules et on enlève les accents dans l'adresse mail
		$mail 		= remplacements($mail);
		$pseudo 	= remplacements($pseudo);
 
		// requête pour récupérer la connexion ip du client
		$IPClient2 = $_SERVER[REMOTE_ADDR];
		$chaine 	= 'abcdefghijklmnopqrstuvwxyz0123456789'; 
		$confirm_bd = str_shuffle($chaine); // On créé le code de confirmation
		// création de la date au format date MySQL
		$born		= $_POST['annee2'].'-'.$_POST['mois2'].'-'.$_POST['jour2'];
		$vote		= 0;
		//On remet les dates au format français pour le mail
		setlocale (LC_TIME, 'fr_FR.UTF8');
		$born_mail = strftime("%A %d %B %Y",strtotime($born));
 
		// --------------------
		// ENREGISTRMENT EN BDD
		// --------------------
		// Protection des donnees contre injection SQL
		$mail_bd	= mysql_real_escape_string($mail);
		$pseudo_bd	= mysql_real_escape_string($pseudo);
		$mdp_bd 	= mysql_real_escape_string($mdp);
		$nom_bd 	= mysql_real_escape_string($nom);
		$prenom_bd 	= mysql_real_escape_string($prenom);
		$ville_bd 	= mysql_real_escape_string($ville);
		$born_bd	= mysql_real_escape_string($born);
		$vote_bd	= mysql_real_escape_string($vote);
		// enregistrement	
		mysql_query("SET NAMES 'utf8'");
		mysql_query("INSERT INTO pdf_membre 
					VALUES ('','".$pseudo_bd."', '".$mdp_bd."', '".$mail_bd."', '".$confirm_bd."', '".$nom_bd."', '".$prenom_bd."', '".$ville_bd."', '".$born_bd."', '".$vote_bd."');");
		$reponse .= '<strong>Bravo, vous &ecirc;tes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail dans quelques instants pour activer votre compte</strong>'.
		'</br><br></br><a href="' .$url_site. '">Retour &agrave; l\'Accueil</a>';
 
		// --------------------
		// MAIL DE CONFIRMATION
		// --------------------
		// On crée la variable (message du mail)
		$message1 =  '<html><body>Bonjour <b>'.$pseudo.'</b> et bienvenue sur '.$nom_site; 
		$message1 .= '<br></br>';
		$message1 .= 'Vous venez de vous inscrire et nous sommes heureux de pouvoir vous compter aujourd\'hui parmi nos membres'; 
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= '<a href="' .$url_script. '/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '">Cliquer pour confirmer votre inscription</a>.</p>';
		$message1 .= '<br></br>';
		$message1 .= 'Voici un rappel de vos identifiants, notez les pr&eacute;cieusement : ';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Pseudo : <b>'.$pseudo.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Mot de passe : <b>'.$mdp.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Mail : <b>'.$mail.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Nom : <b>'.$nom.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Pr&eacute;nom : <b>'.$prenom.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Ville : <b>'.$ville.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Date de naissance : <b>'.$born_mail.'</b>';
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre &agrave; jour';
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= '&agrave; tr&egrave;s bient&ocirc;t sur le site !';
		$message1 .= '<br></br>';
		$message1 .= '<a href="'.$url_site.'">MON SITE</a>.</p>';
 
		$reponse = '<strong>Bravo, vous &ecirc;tes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail dans quelques instants pour activer votre compte</strong>'.
		'</br><br></br><a href="' .$url_site. '">Retour &agrave; l\'Accueil</a>';
		// entete du mail a envoyer
		$entete = "MIME-Version: 1.0\r\n";
		$entete .= "Content-type: text/html; charset=utf-8\r\n";
		$entete .= "From: <".$email_admin.">\r\n";
		$entete .= "Reply-To: ".$email_admin."\r\n";
		// ENVOI du mail
		mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login . ' ', $message1, $entete);
		// on envoie également le mail à l'administrateur
		$message2 =  '<html><body>Bonjour </br><b>'.$pseudo.'</b> vient de s inscrire sur '.$nom_site; 
		$message2 .= '<br></br>';
		$message2 .= 'Pseudo : <b>'.$pseudo.'</b></br>';
		$message2 .= 'Mot de passe : <b>'.$mdp.'</b></br>';
		$message2 .= 'Mail : <b>'.$mail.'</b></br>';
		$message2 .= 'Nom : <b>'.$nom.'</b></br>';
		$message2 .= 'Pr&eacute;nom : <b>'.$prenom.'</b></br>';
		$message2 .= 'Ville : <b>'.$ville.'</b></br>';
		$message2 .= 'Date de naissance : <b>'.$born_mail.'</b>';
		$message2 .= '<br></br>';
		$message2 .= 'IP de connexion : <b>'.$IPClient2.'</b>';
		// entete du mail a envoyer
		$entete2 = "MIME-Version: 1.0\r\n";
		$entete2 .= "Content-type: text/html; charset=utf-8\r\n";
		$entete2 .= "From: <".$email_admin.">\r\n";
		$entete2 .= "Reply-To: ".$email_admin."\r\n";
		mail($email_admin,'Nouvelle inscription sur ' .$nom_site. ' ' . $login . ' ', $message2, $entete2);
	} // FIN de if($validform == 1) 
	unset($_POST);
} // FIN traitement
?>
 
<?php
if($validform == 2) { // affichage message d'erreur eventuel
	echo $msgerreur;
} elseif($validform == 1 && $reponse!='') { // On affiche la reponse de tout le code du dessus
	echo $reponse;
}
?>
 
<?php
// AFFICHAGE du formulaire
if($validform != 1) {
	// $validform = 0 -> c'est la 1ere fois qu'on arrive sur la page (tous les $data = '')
	// $validform = 2 -> erreur, donc RE-AFFICHAGE du formulaire, avec les $data récupérés
?>
 
<form method="post" action="<?$PHP_SELF;?>" />
<fieldset><legend> &nbsp; Inscription</legend>
	<p>
		<label for="idpseudo">Pseudo :&nbsp;</label>
		<input id="idpseudo" type="text" tabindex="1" name="pseudo" value="<?php echo $pseudo; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idmdp">Mot de Passe :&nbsp;</label>
		<input id="idmdp" type="password" tabindex="2" name="mdp" value="<?php echo $mdp; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idverif_mdp">Retapez votre mot de passe :&nbsp;</label>
		<input id="idverif_mdp" type="password" tabindex="3" name="verif_mdp" value="<?php echo $verif_mdp; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idmail">Votre E-Mail :&nbsp;</label>
		<input id="idmail" type="text" tabindex="4" name="mail" value="<?php echo $mail; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idnom">Nom :&nbsp;</label> 
		<input id="idnom" type="text" tabindex="5" name="nom" value="<?php echo $nom; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idprenom">Pr&eacute;nom :&nbsp;</label> 
		<input id="idprenom" type="text" tabindex="6" name="prenom" value="<?php echo $prenom; ?>"  onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idville">Ville :&nbsp;</label> 
		<input id="idville" type="text" tabindex="8" name="ville" value="<?php echo $ville; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="naissance">Date de Naissance :&nbsp;</label>
		<!-- IL MANQUE UN INPUT ICI ??? -->
	</p>
	<p>
		<label for="idjour2">Jour :&nbsp; </label>
		<select id="idjour2" name="jour2" class="jj" tabindex="9" onfocus="this.className='jj_focus';" onblur="this.className='jj';">
<?php 	// 1ère requête : jours
		$affich_form3 = "SELECT * FROM jours ORDER BY jour ASC;";
		$resultat3 = mysql_query($affich_form3) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat3);
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat3) == 0) { // rien dans la liste
?>			<option>Aucun</option>
<?php	} else {
			while ( $list = mysql_fetch_array( $resultat3 ) )
			{
?>				<option value="<?php echo $list['jour']; ?>"><?php echo $list['jour']; ?></option>
<?php		} // fin du while
		} // fin du else
?>
		</select>
	</p>
	<p>
		<label for="idmois2">Mois :&nbsp;</label>
		<select id="idmois2" name="mois2" class="mm" tabindex="10" onfocus="this.className='mm_focus';" onblur="this.className='mm';">
<?php 	// 2ème requête : mois
		$affich_form4 = "SELECT * FROM mois ORDER BY Nb ASC;";
		$resultat4 = mysql_query($affich_form4) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat4);
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat4) == 0) { // rien dans la liste
?>			<option>Aucun</option>';
<?php	} else {
			while ( $list = mysql_fetch_array($resultat4) )
			{
?>			<option value="<?php echo $list['Nb']; ?>"><?php echo $list['mois']; ?></option>
<?php		} // fin du while
		} // fin du else
?>
		</select>
	</p>
	<p>
		<label for="idannee2">Ann&eacute;e :&nbsp;</label>
		<select id="idannee2" name="annee2" class="mm" tabindex="10" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">
<?php	// 3ème requête : années
		$affich_form5 = "SELECT * FROM annee ORDER BY an DESC" ;
		$resultat5 = mysql_query($affich_form5) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat5);
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat5) == 0){ // rien dans la liste
?>			<option>Aucun</option>
<?php	} else {
			while ( $list = mysql_fetch_array( $resultat5 ) )
			{
?>			<option value="<?php echo $list['an']; ?>"><?php echo $list['an']; ?></option>
<?php		} // fin du while
		} // fin du else
?>
		</select>
	</p>
	<p>
		<input type="submit" tabindex="10" name="boutonEnvoiFormulaire" value="Inscription" />
	</p>
</fieldset>
</form>
<?php
} // fin formulaire
?>
 
<?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->
 
<?php mysql_close($sql); //On se deconnecte ?>
 
</body>
</html>
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 18h48   #10
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
çela fonctionne presque, j'ai encore un message d'anomalie :
Warning: mail() [function.mail]: Invalid mail. to = [] in /pdf_inscription.php on line 188
Bravo, vous êtes maintenant inscrit sur ...
Vous allez recevoir un e-mail dans quelques instants pour activer votre compte

- le mail vers l'administrateur est bien envoyé
mais le client ne reçoit pas de mail !

code modifié :
Code :
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
<?php session_start();
require ("configuration.php"); //accès à la base de données
$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'"); 
$result = mysql_fetch_array ($requete);
$id = $result['id'];
$pseudo = $result['pseudo'];
// si l'utilisateur est connecté, c'est le bandeau membre sinon c'est le bandeau classique...
if (!isset($_SESSION['pseudo']) || $_SESSION['pseudo']=='')
{	// bandeau classique si pas connecté
	$bandeau = 'bandeau.php';	}
else
{	// bandeau membre si connecté
	$bandeau = 'bandeau_membres.php';	}
?>
 
<?php // fonction de remplacement de caracteres
// ==> CETTE FONCTION PEUT ETRE DANS UN FICHIER EXTERNE, et appelée par include
function remplacements($chaine)
{
	$sans_accent 	= "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÒÓÔÕÖŒØÙÚÛÜÝàáâãäåæçèéêëìíîïðòóôõöùúûüýÿÑñŠšœ ";
	$avec_accent 	= "AAAAAAACEEEEIIIIOOOOOOOUUUUYaaaaaaaceeeeiiiioooooouuuuyynnsso-";
	$chaine 		= strtolower(trim($chaine)); // en minuscule
	$chaine 		= strtr($chaine, $sans_accent, $avec_accent);
}
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
	<title>MON SITE</title>
	<link rel="stylesheet" type="text/css" href="style.css" />
	<!-- début de la vérification si tout est saisi -->
	<script type="text/javascript">
	function valide(txt, err_id)
	{ document.getElementById(err_id).innerHTML = (txt.value=="") ? "Attention &agrave; bien remplir toutes les cases !" : "&nbsp;"; }
	</script>
	<!-- fin de la vérification si tout est saisi -->
</head>
 
<body>
 
<?php include($bandeau); ?> <!-- insère le bandeau principal en haut en fonction de la connexion -->
 
<div id="mainContent">
 
<?php
$validform = 0;
$msgerreur = '';
$reponse = '';
// -------------------------------
// TRAITEMENT si formulaire envoyé
// -------------------------------
if( isset($_POST['boutonEnvoiFormulaire']) ) 
{
	// -----------------------------------------
	// 1- RECUPERATION DES DONNEES DU FORMULAIRE
	// -----------------------------------------
	$mail2		= $_POST['mail'];
	$pseudo		= $_POST['pseudo'];
	$mdp 		= $_POST['mdp'];
	$verif_mdp 	= $_POST['verif_mdp'];
	$nom 		= $_POST['nom'];
	$prenom 	= $_POST['prenom'];
	$ville 		= $_POST['ville'];
	// -----------------------------------------
	// 2- GESTION des ERREURS
	// -----------------------------------------
	// On verifie les champs obligatoires
	if ($mail2=='' || $pseudo=='' || $mdp=='' || $verif_mdp=='' || $nom=='' || $prenom=='' || $ville=='') 
	{
		if ($mail2=='') {		$msgerreur .= 'Champ obligatoire : email<br />'; }
		if ($pseudo=='') {		$msgerreur .= 'Champ obligatoire : Pseudo<br />'; }
		if ($mdp=='') {			$msgerreur .= 'Champ obligatoire : Mot de passe<br />'; }
		if ($verif_mdp=='') {	$msgerreur .= 'Champ obligatoire : Confirmation du mot de passe<br />'; }
		if ($nom=='') {			$msgerreur .= 'Champ obligatoire : Nom<br />'; }
		if ($prenom=='') {		$msgerreur .= 'Champ obligatoire : Prenom<br />'; }
		if ($ville=='') {		$msgerreur .= 'Champ obligatoire : Ville<br />'; }
		$validform 	= 2;
	}
	// On verifie que les 2 mots de passe sont identiques
	if ($mdp!=$verif_mdp) {
		$msgerreur .= 'Les 2 mots de passe ne sont pas identiques<br />';
		$validform 	= 2;
	}
	// On verifie la validite de l'email et on remet en minuscules et on enlève les accents dans l'adresse mail
		$mail 		= remplacements($mail2);
		$pseudo 	= remplacements($pseudo);
 
    if (preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $mail)) {
    	$msgerreur .= 'Adresse Email non valide : doit être de la forme xxxx@xxx.xx<br />'. $mail.' ';
		$validform 	= 2;
	}
	// On verifie que le mail et le pseudo ne sont pas deja pris
	$verification = mysql_query("SELECT COUNT(*) AS NbreVerif FROM pdf_membre 
					WHERE pseudo = '".mysql_real_escape_string($pseudo)."' 
					OR mail = '".mysql_real_escape_string($mail)."';") or die (mysql_error());
	$donnees = mysql_fetch_array($verification)or die (mysql_error());
	if($donnees['NbreVerif'] > 0) // On verifie que le pseudo n'existe pas déjà
	{ 
		$msgerreur .= 'Le pseudo ou l\'email est d&eacute;j&agrave; utilis&eacute;, merci d\'en choisir un(e) autre.<br />';
		$validform 	= 2;
	}
 
	// pas d'erreur ?
	if($validform != 2) $validform = 1;
	// -----------------------------------------
	// 3- si pas d'erreur => TRAITEMENT
	// -----------------------------------------
	if($validform == 1) 
	{
 
		// requête pour récupérer la connexion ip du client
		$IPClient2 = $_SERVER[REMOTE_ADDR];
		$chaine 	= 'abcdefghijklmnopqrstuvwxyz0123456789'; 
		$confirm_bd = str_shuffle($chaine); // On créé le code de confirmation
		// création de la date au format date MySQL
		$born		= $_POST['annee2'].'-'.$_POST['mois2'].'-'.$_POST['jour2'];
		$vote		= 0;
		//On remet les dates au format français pour le mail
		setlocale (LC_TIME, 'fr_FR.UTF8');
		$born_mail = strftime("%A %d %B %Y",strtotime($born));
 
		// --------------------
		// ENREGISTREMENT EN BDD
		// --------------------
		// Protection des donnees contre injection SQL
		$mail_bd	= mysql_real_escape_string($mail);
		$pseudo_bd	= mysql_real_escape_string($pseudo);
		$mdp_bd 	= mysql_real_escape_string($mdp);
		$nom_bd 	= mysql_real_escape_string($nom);
		$prenom_bd 	= mysql_real_escape_string($prenom);
		$ville_bd 	= mysql_real_escape_string($ville);
		$born_bd	= mysql_real_escape_string($born);
		$vote_bd	= mysql_real_escape_string($vote);
		// enregistrement	
		mysql_query("SET NAMES 'utf8'");
		mysql_query("INSERT INTO pdf_membre 
					VALUES ('','".$pseudo_bd."', '".$mdp_bd."', '".$mail_bd."', '".$confirm_bd."', '".$nom_bd."', '".$prenom_bd."', '".$ville_bd."', '".$born_bd."', '".$vote_bd."');");
		$reponse .= '<strong>Bravo, vous &ecirc;tes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail dans quelques instants pour activer votre compte</strong>'.
		'</br><br></br><a href="' .$url_site. '">Retour &agrave; l\'Accueil</a>'. $mail. ' ';
 
		// --------------------
		// MAIL DE CONFIRMATION
		// --------------------
		// On crée la variable (message du mail)
		$message1 =  '<html><body>Bonjour <b>'.$pseudo.'</b> et bienvenue sur '.$nom_site; 
		$message1 .= '<br></br>';
		$message1 .= 'Vous venez de vous inscrire et nous sommes heureux de pouvoir vous compter aujourd\'hui parmi nos membres'; 
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= '<a href="' .$url_script. '/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '">Cliquer pour confirmer votre inscription</a>.</p>';
		$message1 .= '<br></br>';
		$message1 .= 'Voici un rappel de vos identifiants, notez les pr&eacute;cieusement : ';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Pseudo : <b>'.$pseudo.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Mot de passe : <b>'.$mdp.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Mail : <b>'.$mail.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Nom : <b>'.$nom.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Pr&eacute;nom : <b>'.$prenom.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Ville : <b>'.$ville.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Date de naissance : <b>'.$born_mail.'</b>';
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre &agrave; jour';
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= '&agrave; tr&egrave;s bient&ocirc;t sur le site !';
		$message1 .= '<br></br>';
		$message1 .= '<a href="'.$url_site.'">MON SITE</a>.</p>';
 
		$reponse = '<strong>Bravo, vous &ecirc;tes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail dans quelques instants pour activer votre compte</strong>'.
		'</br><br></br><a href="' .$url_site. '">Retour &agrave; l\'Accueil</a>';
		// entete du mail a envoyer
		$entete = "MIME-Version: 1.0\r\n";
		$entete .= "Content-type: text/html; charset=utf-8\r\n";
		$entete .= "From: <".$email_admin.">\r\n";
		$entete .= "Reply-To: ".$email_admin."\r\n";
		// ENVOI du mail
		mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login . ' ', $message1, $entete);
		// on envoie également le mail à l'administrateur
		$message2 =  '<html><body>Bonjour </br><b>'.$pseudo.'</b> vient de s inscrire sur '.$nom_site; 
		$message2 .= '<br></br>';
		$message2 .= 'Pseudo : <b>'.$pseudo.'</b></br>';
		$message2 .= 'Mot de passe : <b>'.$mdp.'</b></br>';
		$message2 .= 'Mail : <b>'.$mail.'</b></br>';
		$message2 .= 'Nom : <b>'.$nom.'</b></br>';
		$message2 .= 'Pr&eacute;nom : <b>'.$prenom.'</b></br>';
		$message2 .= 'Ville : <b>'.$ville.'</b></br>';
		$message2 .= 'Date de naissance : <b>'.$born_mail.'</b>';
		$message2 .= '<br></br>';
		$message2 .= 'IP de connexion : <b>'.$IPClient2.'</b>';
		// entete du mail a envoyer
		$entete2 = "MIME-Version: 1.0\r\n";
		$entete2 .= "Content-type: text/html; charset=utf-8\r\n";
		$entete2 .= "From: <".$email_admin.">\r\n";
		$entete2 .= "Reply-To: ".$email_admin."\r\n";
		mail($email_admin,'Nouvelle inscription sur ' .$nom_site. ' ' . $login . ' ', $message2, $entete2);
	} // FIN de if($validform == 1) 
	unset($_POST);
} // FIN traitement
?>
 
<?php
if($validform == 2) { // affichage message d'erreur eventuel
	echo $msgerreur;
} elseif($validform == 1 && $reponse!='') { // On affiche la reponse de tout le code du dessus
	echo $reponse;
	echo $mail;
	echo $mail;
}
?>
 
<?php
// AFFICHAGE du formulaire
if($validform != 1) {
	// $validform = 0 -> c'est la 1ere fois qu'on arrive sur la page (tous les $data = '')
	// $validform = 2 -> erreur, donc RE-AFFICHAGE du formulaire, avec les $data récupérés
?>
 
<form method="post" action="<?$PHP_SELF;?>" />
<fieldset><legend> &nbsp; Inscription</legend>
	<p>
		<label for="idpseudo">Pseudo :&nbsp;</label>
		<input id="idpseudo" type="text" tabindex="1" name="pseudo" value="<?php echo $pseudo; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idmdp">Mot de Passe :&nbsp;</label>
		<input id="idmdp" type="password" tabindex="2" name="mdp" value="<?php echo $mdp; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idverif_mdp">Retapez votre mot de passe :&nbsp;</label>
		<input id="idverif_mdp" type="password" tabindex="3" name="verif_mdp" value="<?php echo $verif_mdp; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idmail">Votre E-Mail :&nbsp;</label>
		<input id="idmail" type="text" tabindex="4" name="mail" value="<?php echo $mail2; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idnom">Nom :&nbsp;</label> 
		<input id="idnom" type="text" tabindex="5" name="nom" value="<?php echo $nom; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idprenom">Pr&eacute;nom :&nbsp;</label> 
		<input id="idprenom" type="text" tabindex="6" name="prenom" value="<?php echo $prenom; ?>"  onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idville">Ville :&nbsp;</label> 
		<input id="idville" type="text" tabindex="8" name="ville" value="<?php echo $ville; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="naissance">Date de Naissance :&nbsp;</label>
		<br />
	</p>
	<p>
		<label for="idjour2">Jour :&nbsp; </label>
		<select id="idjour2" name="jour2" class="jj" tabindex="9" onfocus="this.className='jj_focus';" onblur="this.className='jj';">
<?php 	// 1ère requête : jours
		$affich_form3 = "SELECT * FROM jours ORDER BY jour ASC;";
		$resultat3 = mysql_query($affich_form3) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat3);
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat3) == 0) { // rien dans la liste
?>			<option>Aucun</option>
<?php	} else {
			while ( $list = mysql_fetch_array( $resultat3 ) )
			{
?>				<option value="<?php echo $list['jour']; ?>"><?php echo $list['jour']; ?></option>
<?php		} // fin du while
		} // fin du else
?>
		</select>
	</p>
	<p>
		<label for="idmois2">Mois :&nbsp;</label>
		<select id="idmois2" name="mois2" class="mm" tabindex="10" onfocus="this.className='mm_focus';" onblur="this.className='mm';">
<?php 	// 2ème requête : mois
		$affich_form4 = "SELECT * FROM mois ORDER BY Nb ASC;";
		$resultat4 = mysql_query($affich_form4) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat4);
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat4) == 0) { // rien dans la liste
?>			<option>Aucun</option>';
<?php	} else {
			while ( $list = mysql_fetch_array($resultat4) )
			{
?>			<option value="<?php echo $list['Nb']; ?>"><?php echo $list['mois']; ?></option>
<?php		} // fin du while
		} // fin du else
?>
		</select>
	</p>
	<p>
		<label for="idannee2">Ann&eacute;e :&nbsp;</label>
		<select id="idannee2" name="annee2" class="mm" tabindex="10" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">
<?php	// 3ème requête : années
		$affich_form5 = "SELECT * FROM annee ORDER BY an DESC" ;
		$resultat5 = mysql_query($affich_form5) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat5);
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat5) == 0){ // rien dans la liste
?>			<option>Aucun</option>
<?php	} else {
			while ( $list = mysql_fetch_array( $resultat5 ) )
			{
?>			<option value="<?php echo $list['an']; ?>"><?php echo $list['an']; ?></option>
<?php		} // fin du while
		} // fin du else
?>
		</select>
	</p>
	<p>
		<input type="submit" tabindex="10" name="boutonEnvoiFormulaire" value="Inscription" />
	</p>
</fieldset>
</form>
<?php
} // fin formulaire
?>
 
<?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->
 
<?php mysql_close($sql); //On se deconnecte ?>
 
</body>
</html>
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 11h37   #11
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Décidément, c'est à nous de tout faire ??
Code :
Warning: mail() [function.mail]: Invalid mail. to = [] in /pdf_inscription.php on line 188
-> a priori, ca veut dire que mail-to (donc $mail) est vide (?!)
Code :
1
2
		// ENVOI du mail
		mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login . ' ', $message1, $entete);
Teste avec :
Code :
1
2
3
4
5
6
		// ENVOI du mail
		if( @mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login . ' ', $message1, $entete) ) {
			echo 'OK, message envoyé à '.$mail.'<br />';
		} else {
			echo 'Oups ! Ca a foiré ! (mail : '.$mail.')'.'<br />';
		}
Important
Quand je prend le temps de te fournir un script "tout cuit", avec plein de commentaires :
-> c'est avant tout pour que tu le lises et comprennes le code.
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 21h43   #12
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
En fait, j'avais déjà mis des 'echo' pour voir où ça coinçait mais je ne trouvais pas.. c'est pour ça que je demande..

en tout cas merci jreaux62 beaucoup pour l'aide, ça m'a bien servi à comprendre mieux et à m'améliorer de jour en jour...

Donc, il y avait un problème sur l'adresse mail dans le pregmatch.. j'ai mis un autre code et ça fonctionne et aussi la fonction remplacements qui ne fonctionnait pas ; j'en ai profité pour chercher à indiquer aussi la date de naissance (j'en ai sué...) mais voilà, ça marche nickel !

Voici le code modifié :
Code :
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
<?php session_start();
require ("configuration.php"); //accès à la base de données
$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'"); 
$result = mysql_fetch_array ($requete);
$id = $result['id'];
$pseudo = $result['pseudo'];
// si l'utilisateur est connecté, c'est le bandeau membre sinon c'est le bandeau classique...
if (!isset($_SESSION['pseudo']) || $_SESSION['pseudo']=='')
{	// bandeau classique si pas connecté
	$bandeau = 'bandeau.php';	}
else
{	// bandeau membre si connecté
	$bandeau = 'bandeau_membres.php';	}
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
	<title>MON SITE</title>
	<link rel="stylesheet" type="text/css" href="style.css" />
	<!-- début de la vérification si tout est saisi -->
	<script type="text/javascript">
	function valide(txt, err_id)
	{ document.getElementById(err_id).innerHTML = (txt.value=="") ? "Attention &agrave; bien remplir toutes les cases !" : "&nbsp;"; }
	</script>
	<!-- fin de la vérification si tout est saisi -->
</head>
 
<body>
 
<?php include($bandeau); ?> <!-- insère le bandeau principal en haut en fonction de la connexion -->
 
<div id="mainContent">
 
<?php
$validform = 0;
$msgerreur = '';
$reponse = '';
// -------------------------------
// TRAITEMENT si formulaire envoyé
// -------------------------------
if( isset($_POST['boutonEnvoiFormulaire']) ) 
{
	// -----------------------------------------
	// 1- RECUPERATION DES DONNEES DU FORMULAIRE
	// -----------------------------------------
	$mail2		= $_POST['mail'];
	$pseudo2	= $_POST['pseudo'];
	$mdp 		= $_POST['mdp'];
	$verif_mdp 	= $_POST['verif_mdp'];
	$nom 		= $_POST['nom'];
	$prenom 	= $_POST['prenom'];
	$ville 		= $_POST['ville'];
	$jour_vue   = $_POST['jour2'];
	$mois_vue   = $_POST['mois2'];
	$annee_vue   = $_POST['annee2'];
 
	// pour affichage du nom du mois déjà saisi
	$mois_select = "SELECT mois FROM mois WHERE Nb='$mois_vue'";
	$mois_quer = mysql_query($mois_select) or die ('Erreur : '.mysql_error() );
	$mois_req = mysql_fetch_array($mois_quer);
	$mois_affiche = $mois_req['mois'];
 
	// on remet en minuscules et on enlève les accents dans l'adresse mail
	$remplacements = array('à' => 'a','é' => 'e','è' => 'e','ù' => 'u','ê' => 'e','ô' => 'o'
	,'A' => 'a','B' => 'b','C' => 'c','D' => 'd','E' => 'e','f' => 'f','G' => 'g','H' => 'h'
	,'I' => 'i','J' => 'j','K' => 'k','L' => 'l','M' => 'm','N' => 'n','O' => 'o','P' => 'p'
	,'Q' => 'q','R' => 'r','S' => 's','T' => 't','U' => 'u','V' => 'v','W' => 'w'
	,'X' => 'x','Y' => 'y','Z' => 'z' );
	$mail = strtr($mail2, $remplacements);
 
	// on remet en minuscules et on enlève les accents dans le pseudo
	$remplacements = array('à' => 'a','é' => 'e','è' => 'e','ù' => 'u','ê' => 'e','ô' => 'o'
	,'A' => 'a','B' => 'b','C' => 'c','D' => 'd','E' => 'e','f' => 'f','G' => 'g','H' => 'h'
	,'I' => 'i','J' => 'j','K' => 'k','L' => 'l','M' => 'm','N' => 'n','O' => 'o','P' => 'p'
	,'Q' => 'q','R' => 'r','S' => 's','T' => 't','U' => 'u','V' => 'v','W' => 'w'
	,'X' => 'x','Y' => 'y','Z' => 'z' );
	$pseudo_inscription = strtr($pseudo2, $remplacements);
 
	// -----------------------------------------
	// 2- GESTION des ERREURS
	// -----------------------------------------
	// On verifie les champs obligatoires
	if ($mail2=='' || $pseudo2=='' || $mdp=='' || $verif_mdp=='' || $nom=='' || $prenom=='' || $ville=='') 
	{
		if ($mail2=='') {		$msgerreur .= 'Champ obligatoire : email<br />'; }
		if ($pseudo2=='') {		$msgerreur .= 'Champ obligatoire : Pseudo<br />'; }
		if ($mdp=='') {			$msgerreur .= 'Champ obligatoire : Mot de passe<br />'; }
		if ($verif_mdp=='') {	$msgerreur .= 'Champ obligatoire : Confirmation du mot de passe<br />'; }
		if ($nom=='') {			$msgerreur .= 'Champ obligatoire : Nom<br />'; }
		if ($prenom=='') {		$msgerreur .= 'Champ obligatoire : Prenom<br />'; }
		if ($ville=='') {		$msgerreur .= 'Champ obligatoire : Ville<br />'; }
		$validform 	= 2;
	}
	// On verifie que les 2 mots de passe sont identiques
	if ($mdp!=$verif_mdp) 
	{
		$msgerreur .= 'Les 2 mots de passe ne sont pas identiques<br />';
		$validform 	= 2;
	}
	// On verifie la validite de l'email 
	 if(preg_match("/^( [a-zA-Z0-9] )+( [a-zA-Z0-9\._-] )*@( [a-zA-Z0-9_-] )+( [a-zA-Z0-9\._-] +)+$/" , $mail))
	 // if (preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $mail))
	 {
    	$msgerreur .= 'Adresse Email non valide : doit être de la forme <a href="mailto:xxxx@xxx.xx">xxxx@xxx.xx</a><br />'.' '.$mail.' ';
		$msgerreur .= '<br></br>';
		$validform 	= 2;
	}
	// On verifie que le mail et le pseudo ne sont pas deja pris
	$verification = mysql_query("SELECT COUNT(*) AS NbreVerif FROM pdf_membre 
					WHERE pseudo = '".($pseudo_inscription)."' 
					OR mail = '".($mail)."';") or die (mysql_error());
	$donnees = mysql_fetch_array($verification)or die (mysql_error());
	if($donnees['NbreVerif'] > 0) // On verifie que le pseudo n'existe pas déjà
	{ 
		$msgerreur .= 'Le pseudo ou l\'email est d&eacute;j&agrave; utilis&eacute;, merci d\'en choisir un(e) autre.<br />';
		$validform 	= 2;
	}
 
	// pas d'erreur ?
	if($validform != 2) $validform = 1;
	// -----------------------------------------
	// 3- si pas d'erreur => TRAITEMENT
	// -----------------------------------------
	if($validform == 1) 
	{
		// requête pour récupérer la connexion ip du client
		$IPClient2 = $_SERVER[REMOTE_ADDR];
		$chaine 	= 'abcdefghijklmnopqrstuvwxyz0123456789'; 
		$confirm_bd = str_shuffle($chaine); // On créé le code de confirmation
		// création de la date au format date MySQL
		$born		= $_POST['annee2'].'-'.$_POST['mois2'].'-'.$_POST['jour2'];
		$vote		= 0;
		//On remet les dates au format français pour le mail
		setlocale (LC_TIME, 'fr_FR.UTF8');
		$born_mail = strftime("%A %d %B %Y",strtotime($born));
 
		// --------------------
		// ENREGISTREMENT EN BDD
		// --------------------
		// Protection des donnees contre injection SQL
		$mail_bd	= mysql_real_escape_string($mail);
		$pseudo_bd	= mysql_real_escape_string($pseudo_inscription);
		$mdp_bd 	= mysql_real_escape_string($mdp);
		$nom_bd 	= mysql_real_escape_string($nom);
		$prenom_bd 	= mysql_real_escape_string($prenom);
		$ville_bd 	= mysql_real_escape_string($ville);
		$born_bd	= mysql_real_escape_string($born);
		$vote_bd	= mysql_real_escape_string($vote);
		// enregistrement	
		mysql_query("SET NAMES 'utf8'");
		mysql_query("INSERT INTO pdf_membre VALUES ('','".$pseudo_bd."', '".$mdp_bd."', '".$mail_bd."', '".$confirm_bd."', '".$nom_bd."', '".$prenom_bd."', '".$ville_bd."', '".$born_bd."', '".$vote_bd."');");
 
		// --------------------
		// MAIL DE CONFIRMATION
		// --------------------
		// On crée la variable (message du mail)
		$message1 =  '<html><body>Bonjour <b>'.$pseudo_inscription.'</b> et bienvenue sur '.$nom_site; 
		$message1 .= '<br></br>';
		$message1 .= 'Vous venez de vous inscrire et nous sommes heureux de pouvoir vous compter aujourd\'hui parmi nos membres'; 
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= '<a href="' .$url_script. '/confirm.php?login=' . str_replace(' ','%20',$pseudo_inscription) . '&confirm=' . $confirm_bd . '">Cliquer pour confirmer votre inscription</a>.</p>';
		$message1 .= '<br></br>';
		$message1 .= 'Voici un rappel de vos identifiants, notez les pr&eacute;cieusement : ';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Pseudo : <b>'.$pseudo_inscription.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Mot de passe : <b>'.$mdp.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Mail : <b>'.$mail.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Nom : <b>'.$nom.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Pr&eacute;nom : <b>'.$prenom.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Ville : <b>'.$ville.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Date de naissance : <b>'.$born_mail.'</b>';
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre &agrave; jour';
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= '&agrave; tr&egrave;s bient&ocirc;t sur le site !';
		$message1 .= '<br></br>';
		$message1 .= '<a href="'.$url_site.'">MON SITE</a>.</p>';
 
		$reponse = '<strong>Bravo, vous &ecirc;tes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail dans quelques instants pour activer votre compte</strong>'.
		'</br><br></br><a href="' .$url_site. '">Retour &agrave; l\'Accueil</a>';
		$reponse .= '<br></br>';
 
 
		// entete du mail a envoyer
		$entete = "MIME-Version: 1.0\r\n";
		$entete .= "Content-type: text/html; charset=utf-8\r\n";
		$entete .= "From: <".$email_admin.">\r\n";
		$entete .= "Reply-To: ".$email_admin."\r\n";
		// ENVOI du mail
		mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login . ' ', $message1, $entete);
		// on envoie également le mail à l'administrateur
		$message2 =  '<html><body>Bonjour </br><b>'.$pseudo_inscription.'</b> vient de s inscrire sur '.$nom_site; 
		$message2 .= '<br></br>';
		$message2 .= 'Pseudo : <b>'.$pseudo_inscription.'</b></br>';
		$message2 .= 'Mot de passe : <b>'.$mdp.'</b></br>';
		$message2 .= 'Mail : <b>'.$mail.'</b></br>';
		$message2 .= 'Nom : <b>'.$nom.'</b></br>';
		$message2 .= 'Pr&eacute;nom : <b>'.$prenom.'</b></br>';
		$message2 .= 'Ville : <b>'.$ville.'</b></br>';
		$message2 .= 'Date de naissance : <b>'.$born_mail.'</b>';
		$message2 .= '<br></br>';
		$message2 .= 'IP de connexion : <b>'.$IPClient2.'</b>';
		// entete du mail a envoyer
		$entete2 = "MIME-Version: 1.0\r\n";
		$entete2 .= "Content-type: text/html; charset=utf-8\r\n";
		$entete2 .= "From: <".$email_admin.">\r\n";
		$entete2 .= "Reply-To: ".$email_admin."\r\n";
		mail($email_admin,'Nouvelle inscription sur ' .$nom_site. ' ' . $login . ' ', $message2, $entete2);
	} // FIN de if($validform == 1) 
	unset($_POST);
} // FIN traitement
?>
 
<?php
if($validform == 2) { // affichage message d'erreur eventuel
	echo $msgerreur;
} 
elseif($validform == 1 && $reponse!='')		// On affiche la reponse de tout le code du dessus
{
echo $reponse;
}
?>
 
<?php
// AFFICHAGE du formulaire
if($validform != 1) {
	// $validform = 0 -> c'est la 1ere fois qu'on arrive sur la page (tous les $data = '')
	// $validform = 2 -> erreur, donc RE-AFFICHAGE du formulaire, avec les $data récupérés
?>
 
<form method="post" action="<?$PHP_SELF;?>" />
<fieldset><legend> &nbsp; Inscription</legend>
	<p>
		<label for="idpseudo">Pseudo :&nbsp;</label>
		<input id="idpseudo" type="text" tabindex="1" name="pseudo" value="<?php echo $pseudo_inscription; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idmdp">Mot de Passe :&nbsp;</label>
		<input id="idmdp" type="password" tabindex="2" name="mdp" value="<?php echo $mdp; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idverif_mdp">Retapez votre mot de passe :&nbsp;</label>
		<input id="idverif_mdp" type="password" tabindex="3" name="verif_mdp" value="<?php echo $verif_mdp; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idmail">Votre E-Mail :&nbsp;</label>
		<input id="idmail" type="text" tabindex="4" name="mail" value="<?php echo $mail2; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idnom">Nom :&nbsp;</label> 
		<input id="idnom" type="text" tabindex="5" name="nom" value="<?php echo $nom; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idprenom">Pr&eacute;nom :&nbsp;</label> 
		<input id="idprenom" type="text" tabindex="6" name="prenom" value="<?php echo $prenom; ?>"  onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idville">Ville :&nbsp;</label> 
		<input id="idville" type="text" tabindex="8" name="ville" value="<?php echo $ville; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="naissance">Date de Naissance :&nbsp;</label>
		<br />
	</p>
	<p>
		<label for="idjour2">Jour :&nbsp; </label>
		<select id="idjour2" name="jour2" class="jj" tabindex="9" value="<?php echo $jour_vue; ?>" onfocus="this.className='jj_focus';" onblur="this.className='jj';">
		<option selected value="<?php echo $jour_vue; ?>"><?php echo $jour_vue; ?>	
<?php 	// 1ère requête : jours
		$affich_form3 = "SELECT * FROM jours ORDER BY jour ASC;";
		$resultat3 = mysql_query($affich_form3) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat3);
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat3) == 0) { // rien dans la liste
?>			<option>Aucun</option>
<?php	} else {
	while ( $list = mysql_fetch_array( $resultat3 ) )
	{
	?>
	<option value="<?php echo $list['jour']; ?>"><?php echo $list['jour']; ?></option>
	<?php
	} // fin du while
		} // fin du else
		?>
		</select>
		</p>
		<p>
		<label for="idmois2">Mois :&nbsp;</label>
		<select id="idmois2" name="mois2" class="mm" tabindex="10" value="<?php echo $mois_vue; ?>" onfocus="this.className='mm_focus';" onblur="this.className='mm';">
		<option selected value="<?php echo $mois_vue; ?>"><?php echo $mois_affiche; ?>
<?php 	// 2ème requête : mois
		$affich_form4 = "SELECT * FROM mois ORDER BY Nb ASC;";
		$resultat4 = mysql_query($affich_form4) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat4);
 
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat4) == 0) { // rien dans la liste
?>			<option>Aucun</option>';
<?php	} else {
				while ( $list = mysql_fetch_array($resultat4) )
				{
				?>			
				<option value="<?php echo $list['Nb']; ?>"><?php echo $list['mois']; ?></option>
				<?php
				} // fin du while
				} // fin du else
				?>
		</select>
	</p>
	<p>
		<label for="idannee2">Ann&eacute;e :&nbsp;</label>
		<select id="idannee2" name="annee2" class="mm" tabindex="10" value="<?php echo $annee_vue; ?>" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">
		<option selected value="<?php echo $annee_vue; ?>"><?php echo $annee_vue; ?>
<?php	// 3ème requête : années
		$affich_form5 = "SELECT * FROM annee ORDER BY an DESC" ;
		$resultat5 = mysql_query($affich_form5) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat5);
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat5) == 0){ // rien dans la liste
?>			<option>Aucun</option>
<?php	} else {
				while ( $list = mysql_fetch_array( $resultat5 ) )
				{
				?>		
				<option value="<?php echo $list['an']; ?>"><?php echo $list['an']; ?></option>
				<?php		} // fin du while
				} // fin du else
?>
		</select>
	</p>
	<p>
		<input type="submit" tabindex="10" name="boutonEnvoiFormulaire" value="Inscription" />
	</p>
</fieldset>
</form>
<?php
} // fin formulaire
?>
 
<?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->
 
<?php mysql_close($sql); //On se deconnecte ?>
 
</body>
</html>
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 21h47   #13
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Tu as gardé ton array $remplacements = ... ?
Je t'avais pourtant fait une belle fonction ....

ps : pour mettre en minuscule : strtolower()
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 21h53   #14
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
@ jreaux62 : oui effectivement c'était une belle fonction mais elle ne récupérait pas de données dans le pseudo et le mail...ça m'embête ne pas pouvoir l'utiliser :

il y a peut-être un truc que j'ai mal tapé mais comme je ne voyais pas
j'ai repris l'ancien modèle...pas très beau mais qui fonctionne..
je l'utiliserai peut-être un jour...
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2011, 10h16   #15
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
"Tu parles, Charles ! Tu m'étonnes, Elton !" L'erreur vient de ... moi !
J'avais oublié ... d'écrire une ligne de code :
Code :
1
2
3
4
5
6
7
8
9
10
11
<?php
function remplacements($chaine)
{
	// (supprime les accents) + (met en minuscule) + (remplace espace par -)
	$sans_accent 	= "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÒÓÔÕÖŒØÙÚÛÜÝàáâãäåæçèéêëìíîïðòóôõöùúûüýÿÑñŠšœ ";
	$avec_accent 	= "AAAAAAACEEEEIIIIOOOOOOOUUUUYaaaaaaaceeeeiiiioooooouuuuyynnsso-";
	$chaine 	= strtolower(trim($chaine)); // en minuscule
	$chaine 	= strtr($chaine, $sans_accent, $avec_accent);
	return $chaine;
}
?>
"Mea Culpa. Cretino Ego" ...
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2011, 13h55   #16
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
@ jreaux62 :

j'ai essayé de mettre ta fonction mais le pseudo et le mail ne sont pas bons :
voici ce que je récupère : des caractères bizarres...

$mail2 : Gérard@hebergefree.fr
$pseudo_inscription : g�rard
$pseudo2 : Gérard
$mail_bd : grard@hebergefree.fr
$pseudo_bd : grard

et aussi une erreur :
Warning: Cannot modify header information - headers already sent by (output started at /mnt/154/sdc/8/e/fazpedro/test/pdf_inscription.php:25) in /mnt/154/sdc/8/e/fazpedro/test/pdf_inscription.php on line 211


est-ce que c'est dans la fonction ?
Code :
1
2
3
$chaine 	= strtolower(trim($chaine)); // en minuscule
	$chaine 	= strtr($chaine, $sans_accent, $avec_accent);
	return $chaine;
j'avais essayé en indiquant :
Code :
1
2
3
$chaine2 	= strtolower(trim($chaine)); // en minuscule
	$chaine 	= strtr($chaine2, $sans_accent, $avec_accent);
	return $chaine;
mais c'est pareil...

désolé mais je ne comprends pas...
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2011, 14h04   #17
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Essaie ca :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
function remplacements($chaine)
{
	// (supprime les accents) + (met en minuscule) + (remplace espace par -)
	$sans_accent 	= "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÒÓÔÕÖŒØÙÚÛÜÝàáâãäåæçèéêëìíîïðòóôõöùúûüýÿÑñŠšœ ";
	$avec_accent 	= "AAAAAAACEEEEIIIIOOOOOOOUUUUYaaaaaaaceeeeiiiioooooouuuuyynnsso-";
	$chaine 	= strtolower(trim($chaine)); // en minuscule
	$chaine 	= strtr($chaine, $sans_accent, $avec_accent);
	return $chaine;
}
 
$mail2 = 'Gérard@hebergefree.fr';
$pseudo2 = 'Gérard';
 
echo '$mail2 = '.$mail2.'<br />';
echo '$pseudo2 = '.$pseudo2.'<br /><br />';
 
$mail = remplacements($mail2);
$pseudo = remplacements($pseudo2);
 
echo '$mail = '.$mail.'<br />';
echo '$pseudo = '.$pseudo.'<br /><br />';
?>
Le résultat est bon.
Où est ton problème ?
Vérifie que tu utilises correctement la fonction, et là où il faut ...
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2011, 14h42   #18
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
Voici ce que j'obtiens :
$mail2 = Gérard@hebergefree.fr
$pseudo2 = Gérard
$mail = go�rard@hebergefree.fr
$pseudo = go�rard


je remets mon code car là je ne vois pas ce qui coinçe... je suis un peu long à la détente...
Code :
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
 
<?php session_start();
require ("configuration.php"); //accès à la base de données
$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'"); 
$result = mysql_fetch_array ($requete);
$id = $result['id'];
$pseudo = $result['pseudo'];
// si l'utilisateur est connecté, c'est le bandeau membre sinon c'est le bandeau classique...
if (!isset($_SESSION['pseudo']) || $_SESSION['pseudo']=='')
{	// bandeau classique si pas connecté
	$bandeau = 'bandeau.php';	}
else
{	// bandeau membre si connecté
	$bandeau = 'bandeau_membres.php';	}
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
	<title>MON SITE</title>
	<link rel="stylesheet" type="text/css" href="style.css" />
	<!-- début de la vérification si tout est saisi -->
	<script type="text/javascript">
	function valide(txt, err_id)
	{ document.getElementById(err_id).innerHTML = (txt.value=="") ? "Attention &agrave; bien remplir toutes les cases !" : "&nbsp;"; }
	</script>
	<!-- fin de la vérification si tout est saisi -->
</head>
 
<body>
 
<?php include($bandeau); ?> <!-- insère le bandeau principal en haut en fonction de la connexion -->
 
<div id="mainContent">
 
<?php
function remplacements($chaine)
{
	// (supprime les accents) + (met en minuscule) + (remplace espace par -)
	$sans_accent 	= "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÒÓÔÕÖŒØÙÚÛÜÝàáâãäåæçèéêëìíîïðòóôõöùúûüýÿÑñŠšœ ";
	$avec_accent 	= "AAAAAAACEEEEIIIIOOOOOOOUUUUYaaaaaaaceeeeiiiioooooouuuuyynnsso-";
	$chaine 	= strtolower(trim($chaine)); // en minuscule
	$chaine 	= strtr($chaine, $sans_accent, $avec_accent);
	return $chaine;
}
?>
 
<?php
$validform = 0;
$msgerreur = '';
$reponse = '';
// -------------------------------
// TRAITEMENT si formulaire envoyé
// -------------------------------
if( isset($_POST['boutonEnvoiFormulaire']) ) 
{
	// -----------------------------------------
	// 1- RECUPERATION DES DONNEES DU FORMULAIRE
	// -----------------------------------------
	$mail2		= $_POST['mail'];
	$pseudo2	= $_POST['pseudo'];
	$mdp 		= $_POST['mdp'];
	$verif_mdp 	= $_POST['verif_mdp'];
	$nom 		= $_POST['nom'];
	$prenom 	= $_POST['prenom'];
	$ville 		= $_POST['ville'];
	$jour_vue   = $_POST['jour2'];
	$mois_vue   = $_POST['mois2'];
	$annee_vue   = $_POST['annee2'];
 
	// pour affichage du nom du mois déjà saisi
	$mois_select = "SELECT mois FROM mois WHERE Nb='$mois_vue'";
	$mois_quer = mysql_query($mois_select) or die ('Erreur : '.mysql_error() );
	$mois_req = mysql_fetch_array($mois_quer);
	$mois_affiche = $mois_req['mois'];
 
	// on remet en minuscules et on enlève les accents dans l'adresse mail
	$mail = remplacements($mail2);
 
	// on remet en minuscules et on enlève les accents dans le pseudo
	$pseudo_inscription = remplacements($pseudo2);
 
	// -----------------------------------------
	// 2- GESTION des ERREURS
	// -----------------------------------------
	// On verifie les champs obligatoires
	if ($mail2=='' || $pseudo2=='' || $mdp=='' || $verif_mdp=='' || $nom=='' || $prenom=='' || $ville=='' || $jour_vue=='' || $mois_vue=='' || $annee_vue=='') 
	{
		if ($mail2=='') {		$msgerreur .= 'Champ obligatoire : '.'<b>'.' Email'.'</b>'.'<br />'; }
		if ($pseudo2=='') {		$msgerreur .= 'Champ obligatoire : '.'<b>'.' Pseudo'.'</b>'.'<br />'; }
		if ($mdp=='') {			$msgerreur .= 'Champ obligatoire : '.'<b>'.' Mot de passe'.'</b>'.'<br />'; }
		if ($verif_mdp=='') {	$msgerreur .= 'Champ obligatoire : '.'<b>'.' Confirmation du mot de passe'.'</b>'.'<br />'; }
		if ($nom=='') {			$msgerreur .= 'Champ obligatoire : '.'<b>'.' Nom'.'</b>'.'<br />'; }
		if ($prenom=='') {		$msgerreur .= 'Champ obligatoire : '.'<b>'.' Pr&eacute;nom'.'</b>'.'<br />'; }
		if ($ville=='') {		$msgerreur .= 'Champ obligatoire : '.'<b>'.' Ville'.'</b>'.'<br />'; }
		if ($jour_vue=='') {	$msgerreur .= 'Champ obligatoire : '.'<b>'.' Jour de naissance'.'</b>'.'<br />'; }
		if ($mois_vue=='') {	$msgerreur .= 'Champ obligatoire : '.'<b>'.' Mois de naissance'.'</b>'.'<br />'; }
		if ($annee_vue=='') {	$msgerreur .= 'Champ obligatoire : '.'<b>'.' Ann&eacute;e de naissance'.'</b>'.'<br />'; }
		$validform 	= 2;
	}
	// On verifie que les 2 mots de passe sont identiques
	if ($mdp!=$verif_mdp) 
	{
		$msgerreur .= '<b>'.'Les 2 mots de passe ne sont pas identiques'.'</b>'.'<br />';
		$validform 	= 2;
	}
	// On verifie la validite de l'email 
	 if(preg_match("/^( [a-zA-Z0-9] )+( [a-zA-Z0-9\._-] )*@( [a-zA-Z0-9_-] )+( [a-zA-Z0-9\._-] +)+$/" , $mail))
	{
    	$msgerreur .= 'Adresse Email non valide : doit être de la forme xxxx@xxx.xx<br />'.' '.'<b>'.$mail.'</b>';
		$msgerreur .= '<br></br>';
		$validform 	= 2;
	}
	// On verifie que le mail et le pseudo ne sont pas deja pris
	$verification = mysql_query("SELECT COUNT(*) AS NbreVerif FROM pdf_membre 
					WHERE pseudo = '".($pseudo_inscription)."' 
					OR mail = '".($mail)."';") or die (mysql_error());
	$donnees = mysql_fetch_array($verification)or die (mysql_error());
	if($donnees['NbreVerif'] > 0) // On verifie que le pseudo n'existe pas déjà
	{ 
		$msgerreur .= 'Le pseudo ou l\'email est d&eacute;j&agrave; utilis&eacute;, merci d\'en choisir un(e) autre.<br />';
		$validform 	= 2;
	}
 
	// pas d'erreur ?
	if($validform != 2) $validform = 1;
	// -----------------------------------------
	// 3- si pas d'erreur => TRAITEMENT
	// -----------------------------------------
	if($validform == 1) 
	{
		// requête pour récupérer la connexion ip du client
		$IPClient2 = $_SERVER[REMOTE_ADDR];
		$chaine 	= 'abcdefghijklmnopqrstuvwxyz0123456789'; 
		$confirm_bd = str_shuffle($chaine); // On créé le code de confirmation
		// création de la date au format date MySQL
		$born		= $_POST['annee2'].'-'.$_POST['mois2'].'-'.$_POST['jour2'];
		$vote		= 0;
		//On remet les dates au format français pour le mail
		setlocale (LC_TIME, 'fr_FR.UTF8');
		$born_mail = strftime("%A %d %B %Y",strtotime($born));
 
		// --------------------
		// ENREGISTREMENT EN BDD
		// --------------------
		// Protection des donnees contre injection SQL
		$mail_bd	= mysql_real_escape_string($mail);
		$pseudo_bd	= mysql_real_escape_string($pseudo_inscription);
		$mdp_bd 	= mysql_real_escape_string($mdp);
		$nom_bd 	= mysql_real_escape_string($nom);
		$prenom_bd 	= mysql_real_escape_string($prenom);
		$ville_bd 	= mysql_real_escape_string($ville);
		$born_bd	= mysql_real_escape_string($born);
		$vote_bd	= mysql_real_escape_string($vote);
		// enregistrement	
		mysql_query("SET NAMES 'utf8'");
		mysql_query("INSERT INTO pdf_membre VALUES ('','".$pseudo_bd."', '".$mdp_bd."', '".$mail_bd."', '".$confirm_bd."', '".$nom_bd."', '".$prenom_bd."', '".$ville_bd."', '".$born_bd."', '".$vote_bd."');");
 
		// --------------------
		// MAIL DE CONFIRMATION
		// --------------------
		// On crée la variable (message du mail)
		$message1 =  '<html><body>Bonjour <b>'.$pseudo_inscription.'</b> et bienvenue sur '.$nom_site; 
		$message1 .= '<br></br>';
		$message1 .= 'Vous venez de vous inscrire et nous sommes heureux de pouvoir vous compter aujourd\'hui parmi nos membres'; 
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= '<a href="' .$url_script. '/confirm.php?login=' . str_replace(' ','%20',$pseudo_inscription) . '&confirm=' . $confirm_bd . '">Cliquer pour confirmer votre inscription</a>.</p>';
		$message1 .= '<br></br>';
		$message1 .= 'Voici un rappel de vos identifiants, notez les pr&eacute;cieusement : ';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Pseudo : <b>'.$pseudo_inscription.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Mot de passe : <b>'.$mdp.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Mail : <b>'.$mail.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Nom : <b>'.$nom.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Pr&eacute;nom : <b>'.$prenom.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Ville : <b>'.$ville.'</b>';
		$message1 .= '<br></br>';
		$message1 .= 'Votre Date de naissance : <b>'.$born_mail.'</b>';
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre &agrave; jour';
		$message1 .= '<br></br>';
		$message1 .= '<br></br>';
		$message1 .= '&agrave; tr&egrave;s bient&ocirc;t sur le site !';
		$message1 .= '<br></br>';
		$message1 .= '<a href="'.$url_site.'">MON SITE</a>.</p>';
 
		$reponse = '<strong>Bravo, vous &ecirc;tes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail dans quelques instants pour activer votre compte</strong>'.
		'</br><br></br><a href="' .$url_site. '">Retour &agrave; l\'Accueil</a>';
		$reponse .= '<br></br>';
		$reponse .= '$mail2 : '.$mail2;
		$reponse .= '<br></br>';
		$reponse .= '$pseudo_inscription : '.$pseudo_inscription;
		$reponse .= '<br></br>';
		$reponse .= '$pseudo2 : '.$pseudo2;
		$reponse .= '<br></br>';
		$reponse .= '$mail_bd : '.$mail_bd;
		$reponse .= '<br></br>';
		$reponse .= '$pseudo_bd : '.$pseudo_bd;
		$reponse .= '<br></br>';
 
		// entete du mail a envoyer
		header('Content-Type: text/html; charset=UTF-8');
		$entete = "MIME-Version: 1.0\r\n";
		$entete .= "Content-type: text/html; charset=utf-8\r\n";
		$entete .= "From: <".$email_admin.">\r\n";
		$entete .= "Reply-To: ".$email_admin."\r\n";
		// ENVOI du mail
		mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login . ' ', $message1, $entete);
		// on envoie également le mail à l'administrateur
		$message2 =  '<html><body>Bonjour </br><b>'.$pseudo_inscription.'</b> vient de s inscrire sur '.$nom_site; 
		$message2 .= '<br></br>';
		$message2 .= 'Pseudo : <b>'.$pseudo_inscription.'</b></br>';
		$message2 .= 'Mot de passe : <b>'.$mdp.'</b></br>';
		$message2 .= 'Mail : <b>'.$mail.'</b></br>';
		$message2 .= 'Nom : <b>'.$nom.'</b></br>';
		$message2 .= 'Pr&eacute;nom : <b>'.$prenom.'</b></br>';
		$message2 .= 'Ville : <b>'.$ville.'</b></br>';
		$message2 .= 'Date de naissance : <b>'.$born_mail.'</b>';
		$message2 .= '<br></br>';
		$message2 .= 'IP de connexion : <b>'.$IPClient2.'</b>';
		// entete du mail a envoyer
		$entete2 = "MIME-Version: 1.0\r\n";
		$entete2 .= "Content-type: text/html; charset=utf-8\r\n";
		$entete2 .= "From: <".$email_admin.">\r\n";
		$entete2 .= "Reply-To: ".$email_admin."\r\n";
		mail($email_admin,'Nouvelle inscription sur ' .$nom_site. ' ' . $login . ' ', $message2, $entete2);
	} // FIN de if($validform == 1) 
	unset($_POST);
} // FIN traitement
?>
 
<?php
if($validform == 2) { // affichage message d'erreur eventuel
	echo $msgerreur;
} 
elseif($validform == 1 && $reponse!='')		// On affiche la reponse de tout le code du dessus
{
echo $reponse;
}
?>
 
<?php
// AFFICHAGE du formulaire
if($validform != 1) {
	// $validform = 0 -> c'est la 1ere fois qu'on arrive sur la page (tous les $data = '')
	// $validform = 2 -> erreur, donc RE-AFFICHAGE du formulaire, avec les $data récupérés
?>
 
<form method="post" action="<?$PHP_SELF;?>" />
<fieldset><legend> &nbsp; Inscription</legend>
	<p>
		<label for="idpseudo">Pseudo :&nbsp;</label>
		<input id="idpseudo" type="text" tabindex="1" name="pseudo" value="<?php echo $pseudo_inscription; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idmdp">Mot de Passe :&nbsp;</label>
		<input id="idmdp" type="password" tabindex="2" name="mdp" value="<?php echo $mdp; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idverif_mdp">Retapez votre mot de passe :&nbsp;</label>
		<input id="idverif_mdp" type="password" tabindex="3" name="verif_mdp" value="<?php echo $verif_mdp; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idmail">Votre E-Mail :&nbsp;</label>
		<input id="idmail" type="text" tabindex="4" name="mail" value="<?php echo $mail2; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idnom">Nom :&nbsp;</label> 
		<input id="idnom" type="text" tabindex="5" name="nom" value="<?php echo $nom; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idprenom">Pr&eacute;nom :&nbsp;</label> 
		<input id="idprenom" type="text" tabindex="6" name="prenom" value="<?php echo $prenom; ?>"  onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="idville">Ville :&nbsp;</label> 
		<input id="idville" type="text" tabindex="8" name="ville" value="<?php echo $ville; ?>" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
	</p>
	<p>
		<label for="naissance">Date de Naissance :&nbsp;</label>
		<br />
	</p>
	<p>
		<label for="idjour2">Jour :&nbsp; </label>
		<select id="idjour2" name="jour2" class="jj" tabindex="9" value="<?php echo $jour_vue; ?>" onfocus="this.className='jj_focus';" onblur="this.className='jj';">
		<option selected value="<?php echo $jour_vue; ?>"><?php echo $jour_vue; ?>	
<?php 	// 1ère requête : jours
		$affich_form3 = "SELECT * FROM jours ORDER BY jour ASC;";
		$resultat3 = mysql_query($affich_form3) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat3);
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat3) == 0) { // rien dans la liste
?>			<option>Aucun</option>
<?php	} else {
	while ( $list = mysql_fetch_array( $resultat3 ) )
	{
	?>
	<option value="<?php echo $list['jour']; ?>"><?php echo $list['jour']; ?></option>
	<?php
	} // fin du while
		} // fin du else
		?>
		</select>
		</p>
		<p>
		<label for="idmois2">Mois :&nbsp;</label>
		<select id="idmois2" name="mois2" class="mm" tabindex="10" value="<?php echo $mois_vue; ?>" onfocus="this.className='mm_focus';" onblur="this.className='mm';">
		<option selected value="<?php echo $mois_vue; ?>"><?php echo $mois_affiche; ?>
<?php 	// 2ème requête : mois
		$affich_form4 = "SELECT * FROM mois ORDER BY Nb ASC;";
		$resultat4 = mysql_query($affich_form4) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat4);
 
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat4) == 0) { // rien dans la liste
?>			<option>Aucun</option>';
<?php	} else {
				while ( $list = mysql_fetch_array($resultat4) )
				{
				?>			
				<option value="<?php echo $list['Nb']; ?>"><?php echo $list['mois']; ?></option>
				<?php
				} // fin du while
				} // fin du else
				?>
		</select>
	</p>
	<p>
		<label for="idannee2">Ann&eacute;e :&nbsp;</label>
		<select id="idannee2" name="annee2" class="mm" tabindex="10" value="<?php echo $annee_vue; ?>" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">
		<option selected value="<?php echo $annee_vue; ?>"><?php echo $annee_vue; ?>
<?php	// 3ème requête : années
		$affich_form5 = "SELECT * FROM annee ORDER BY an DESC" ;
		$resultat5 = mysql_query($affich_form5) or die ('Erreur : '.mysql_error() );
		$total = mysql_num_rows($resultat5);
		//On vérifie que la table contient quelque chose
		if(mysql_num_rows($resultat5) == 0){ // rien dans la liste
?>			<option>Aucun</option>
<?php	} else {
				while ( $list = mysql_fetch_array( $resultat5 ) )
				{
				?>		
				<option value="<?php echo $list['an']; ?>"><?php echo $list['an']; ?></option>
				<?php		} // fin du while
				} // fin du else
?>
		</select>
	</p>
	<p>
		<input type="submit" tabindex="10" name="boutonEnvoiFormulaire" value="Inscription" />
	</p>
</fieldset>
</form>
<?php
} // fin formulaire
?>
 
<?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->
 
<?php mysql_close($sql); //On se deconnecte ?>
 
</body>
</html>
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2011, 15h02   #19
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Ahhhhh oui ... ca vient de là :
Code :
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
1/ Une solution est de changer pour : (sans rien changer d'autre)
Code :
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1" />
2/ L'autre solution est de garder utf-8 :
Code :
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
Et de modifier le code :
Code :
1
2
3
4
5
6
7
<?php // (pour tous les POST)
	$mail2		= htmlentities($_POST['mail'],ENT_QUOTES,'UTF-8');
	$pseudo2	= htmlentities($_POST['pseudo'],ENT_QUOTES,'UTF-8');
// [....]
	$mail = remplacements(html_entity_decode($mail2));
	$pseudo = remplacements(html_entity_decode($pseudo2));
?>
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2011, 21h21   #20
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
Désolé Jreaux62 mais je vois que c'est la fonction qui pose problème, non ?
Code :
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
 
<?php
function remplacements($chaine)
{
	// (supprime les accents) + (met en minuscule) + (remplace espace par -)
	$sans_accent 	= "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÒÓÔÕÖŒØÙÚÛÜÝàáâãäåæçèéêëìíîïðòóôõöùúûüýÿÑñŠšœ ";
	$avec_accent 	= "AAAAAAACEEEEIIIIOOOOOOOUUUUYaaaaaaaceeeeiiiioooooouuuuyynnsso-";
	$chaine 	= strtolower(trim($chaine)); // en minuscule
	$chaine 	= strtr($chaine, $sans_accent, $avec_accent);
	return $chaine;
}
?>
 
<?php
$validform = 0;
$msgerreur = '';
$reponse = '';
// -------------------------------
// TRAITEMENT si formulaire envoyé
// -------------------------------
if( isset($_POST['boutonEnvoiFormulaire']) ) 
{
	// -----------------------------------------
	// 1- RECUPERATION DES DONNEES DU FORMULAIRE
	// -----------------------------------------
	$mail2		= htmlentities($_POST['mail'],ENT_QUOTES,'UTF-8');
	$pseudo2	= htmlentities($_POST['pseudo'],ENT_QUOTES,'UTF-8');
	$mdp 		= $_POST['mdp'];
	$verif_mdp 	= $_POST['verif_mdp'];
	$nom 		= $_POST['nom'];
	$prenom 	= $_POST['prenom'];
	$ville 		= $_POST['ville'];
	$jour_vue   = $_POST['jour2'];
	$mois_vue   = $_POST['mois2'];
	$annee_vue   = $_POST['annee2'];
 
	// pour affichage du nom du mois déjà saisi
	$mois_select = "SELECT mois FROM mois WHERE Nb='$mois_vue'";
	$mois_quer = mysql_query($mois_select) or die ('Erreur : '.mysql_error() );
	$mois_req = mysql_fetch_array($mois_quer);
	$mois_affiche = $mois_req['mois'];
 
	// on remet en minuscules et on enlève les accents dans l'adresse mail et aussi en caractères normaux
	$mail_min = remplacements($mail2);
	$mail = remplacements(html_entity_decode($mail_min));
	// on remet en minuscules et on enlève les accents dans le pseudo et aussi en caractères normaux
	$pseudo_min = remplacements($pseudo2);
	$pseudo_inscription = remplacements(html_entity_decode($pseudo_min));
 
 
	// pour voir les erreurs !!!
	echo '$mail2 : '.$mail2.'<br />';
	echo '$mail_min : '.$mail_min.'<br />';
	echo '$mail : '.$mail.'<br />';
	echo '$pseudo2 : '.$pseudo2.'<br />';
	echo '$pseudo_min : '.$pseudo_min.'<br />';
	echo '$pseudo_inscription'.$pseudo_inscription.'<br />';
Voici le résultat : il n'a pas enlevé les accents...
Code :
1
2
3
4
5
6
$mail2 : Gérard@hebergefree.fr
$mail_min : gérard@hebergefree.fr
$mail : g�rard@hebergefree.fr
$pseudo2 : Gérard
$pseudo_min : gérard
$pseudo_inscriptiong�rard
je suis paumé..
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h43.


 
 
 
 
Partenaires

Hébergement Web