Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
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 02/06/2006, 13h00   #1
Membre actif
 
Avatar de kevinf
 
Développeur informatique
Inscription : juin 2005
Messages : 839
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2005
Messages : 839
Points : 165
Points : 165
Par défaut [Conception] Pk ma valeur par defaut ne se met pas?

Salut,
j'ai un formulaire d'inscription qui fonctionne très bien sauf un détail, dans ma base il y a certaine table, j'ai mis une valeur par defaut mais lors de l'inscription la valeur ne se met pas.
Voici le formulaire :
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
 
<head>
 
</head>
<body>
<form name="form1" method="post" action="pdf_inscription2.php">
 
 
         <input name="nom" type="text" size="19" id="nom" class="inputbox" onblur="if(this.value=='') this.value='Nom';" onfocus="if(this.value=='Nom') this.value='';" value="Nom"><br>
 
 <input name="prenom" size="19" type="text" id="prenom" class="inputbox" onblur="if(this.value=='') this.value='Prénom';" onfocus="if(this.value=='Prénom') this.value='';" value="Prénom"><br>
 
<input type="text" size="19" name="pseudo" class="inputbox" onblur="if(this.value=='') this.value='Pseudo';" onfocus="if(this.value=='Pseudo') this.value='';" value="Pseudo"><br>
 
 
 
 
<input name="mail" size="19" type="text" id="mail" class="inputbox" onblur="if(this.value=='') this.value='Mail';" onfocus="if(this.value=='Mail') this.value='';" value="Mail"><br>
 
 
 
<input name="mdp" type="password" size="19"  id="mdp" class="inputbox" onkeyup="evalPwd(this.value);" onblur="if(this.value=='') this.value='Passe';" onfocus="if(this.value=='Passe') this.value='';" value="Passe"><br>
 
 
  <input name="website" type="text" id="website" size="19"  class="inputbox" onblur="if(this.value=='') this.value='Votre site';" onfocus="if(this.value=='Votre site') this.value='';" value="Votre site"><br>
 
 
<input name="pays" type="text" id="pays" size="19"  class="inputbox" onblur="if(this.value=='') this.value='Pays';" onfocus="if(this.value=='Pays') this.value='';" value="Pays"><br>
 
 
 
 <input name="born" type="text" size="19"  id="born" class="inputbox" onblur="if(this.value=='') this.value='Date de naissance';" onfocus="if(this.value=='Date de naissance') this.value='';" value="Date de naissance"><br>
 
 
 
<input name="adresse" type="text" id="adresse" size="19"  class="inputbox" onblur="if(this.value=='') this.value='Adresse';" onfocus="if(this.value=='Adresse') this.value='';" value="Adresse"><br>
 
<input name="postal" type="text" id="postal" size="19"  class="inputbox" onblur="if(this.value=='') this.value='Code postal';" onfocus="if(this.value=='Code postal') this.value='';" value="Code postal"><br>
 
<input name="ville" type="text" id="ville" size="19"  class="inputbox" onblur="if(this.value=='') this.value='Ville';" onfocus="if(this.value=='Ville') this.value='';" value="Ville"><br>
 
 <input name="tel" type="text" id="tel" size="19"  class="inputbox" onblur="if(this.value=='') this.value='Téléphone';" onfocus="if(this.value=='Téléphone') this.value='';" value="Téléphone"><br>                               
 
 
 
 
                                        <input type="submit" name="Submit" value="Inscription" class="inputbox" onClick="this.form.submit();this.disabled=true;this.value='Patientez...'">
 
 
 
                            </form>
</body>
Et voici 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
 
 
<?php
session_start(); //On demarre une session parce que j'ai envi ^^
 
require "conf.php3"; //On insert le fichier qui contient les informations de la BDD
 
mysql_connect("$sql_serveur","$sql_login","$sql_pass");
mysql_select_db("$sql_bdd"); //On ce connecte
		$mail = htmlentities($_POST['mail']);
 
    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
		$pseudo = htmlentities($_POST['pseudo']); //On recupère les infos
		$mdp = htmlentities($_POST['mdp']);
		$nom = htmlentities($_POST['nom']);
		$prenom = htmlentities($_POST['prenom']);
		$website = htmlentities($_POST['website']);
		$pays = htmlentities($_POST['pays']);
		$born = htmlentities($_POST['born']);
		$adresse = htmlentities($_POST['adresse']);
		$tel = htmlentities($_POST['tel']);
		$ville = htmlentities($_POST['ville']);	
		$postal = htmlentities($_POST['postal']);			
$commandes = htmlentities($_POST['commandes']);
$etat = htmlentities($_POST['etat']);
$infos = htmlentities($_POST['infos']);
$fini = htmlentities($_POST['fini']);
 
/*On Fait la variable contenant le mail de confirmation*/
 
		$message1 = '<html><body><b>Bonjour ' . $pseudo . ' et bienvenue sur  </br></b>'; 
		$message1 .= '</br>';
		$message1 .= 'Vous venez de vous inscrire et nous sommes heureux de pouvoir vous compter aujourd\'hui parmi nos membres.<br><br>'; 
		$message1 .= 'Voici un rappel de vos identifiants, notez les précieusement : <br><br>';
		$message1 .= '<u>Votre Pseudo</u> : ' . $pseudo .'.<br><br>';
		$message1 .= '<u>Votre Mot de passe</u> : ' . $mdp .'.<br><br>';
		$message1 .= '<u>Votre Mail</u> : ' . $mail .'.<br><br>';
		$message1 .= '<u>Votre Nom</u> : ' . $nom .'.<br><br>';
		$message1 .= '<u>Votre Prenom</u> : ' . $prenom .'.<br><br>';
		$message1 .= '<u>Votre Pays</u> : ' . $pays .'.<br><br>';
		$message1 .= '<u>Votre Site Web</u> : ' . $website .'.<br><br>';
		$message1 .= '<u>Votre adresse</u> : ' . $adresse .'.<br><br>';
		$message1 .= '<u>Votre code postal</u> : ' . $postal .'.<br><br>';
		$message1 .= '<u>Votre Ville</u> : ' . $ville .'.<br><br>';
		$message1 .= '<u>Votre téléphone</u> : ' . $tel .'.<br><br>';
		$message1 .= '<u>Votre Date de naissance</u> : ' . $born .'.<br><br>';									
		$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre à jour.<br>';
		$message1 .= '<br><font color="#FF0000"><b>Votre Clé d\'activation</font></b> (copier/coller le dans votre barre d\'adresse):<br><br>';
   		$message1 .= '/fr/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '<br><br><br><br>';
		$message1 .= 'A très bientôt sur le site!<br>L\'équipe de .<br><a href=""></a>';
 
		$verification = mysql_query("SELECT COUNT(*) FROM pdf_membre WHERE pseudo='$pseudo'") 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 = 'Ce pseudo est déjà utilisé, merci d\'en choisir un nouveau. <a href="javascript:history.back(1)">Retour au formulaire</a>';
		}
		else
		{	
			$verification2 = mysql_query("SELECT COUNT(*) FROM pdf_membre WHERE mail='$mail'") or die (mysql_error());
			$donnees2 = mysql_fetch_array($verification2)or die (mysql_error());
 
			if($donnees2['COUNT(*)'] >= 1) //Pareil pour l'e-mail
			{
				$reponse = 'Cette adresse e-mail est déjà utilisé, veuillez en choisir une autre. <a href="javascript:history.back(1)">Retour au formulaire</a>';
			}
			elseif( empty($pseudo) || empty($mdp) || empty($mail) || empty($nom) || empty($prenom) || empty($born)) //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>';
			}
 
			else //Si tout est bon on entre les données dans la BDD et on envoye le mail
			{
				mysql_query("INSERT INTO pdf_membre VALUES ('','$pseudo', '$mdp', '$mail', '$confirm', '$nom', '$prenom', '$pays', '$born', '$website', '$commandes', '$etat', '$infos', '$fini', '$adresse', '$tel', '$postal', '$ville', '$ban', '$mess1', '$mess2')");
				$reponse = 'Bravo, vous êtes maintenant inscrit sur. <br>Vous allez recevoir un e-mail pour activer votre compte. <br><a href="http://www./fr">Retour à l\'Accueil</a>';
				$email_admin = ''; //Votre adresse mail
				$entete = "MIME-Version: 1.0\r\n";
				$entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
				$entete .= "From: <$email_admin>\r\n";
				$entete .= "Reply-To: $email_admin\r\n";
				mail($mail,'Bienvenue sur  ' . $login .'.' , $message1, "$entete");
			}
		}
	}
	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>';
	} 	
 
 
 
 
?>
 
<html>
<body>
<? echo "$reponse"; ?> </body>
</html>
Pouvez vous me dire d'où vient l'erreur?

Merci par avance
__________________
KevinF
kevinf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2006, 13h57   #2
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
C'est la valeur par défaut de tes input de ton formulaire ou c'est une valeur par défaut lors de l'enregistrement dans ta base qui marche pas ?
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2006, 14h15   #3
Membre actif
 
Avatar de kevinf
 
Développeur informatique
Inscription : juin 2005
Messages : 839
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2005
Messages : 839
Points : 165
Points : 165
Lors de l'enregistrement dans la base.
__________________
KevinF
kevinf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2006, 14h22   #4
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
Ah d'accord c'est des valeurs par défaut définies dans ta base pas dans le code... Aucune idée alors...
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2006, 14h26   #5
Membre actif
 
Avatar de kevinf
 
Développeur informatique
Inscription : juin 2005
Messages : 839
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2005
Messages : 839
Points : 165
Points : 165
Quelqu'un saurait?
__________________
KevinF
kevinf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2006, 14h31   #6
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
Mais du coup c'est plus un problème BDD parce que je vois pas en quoi le PHP intervient...
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2006, 14h37   #7
Membre actif
 
Avatar de kevinf
 
Développeur informatique
Inscription : juin 2005
Messages : 839
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2005
Messages : 839
Points : 165
Points : 165
Ba si, c'est un problème php car j'ai d'autre formulaire, ca marche bien.
__________________
KevinF
kevinf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2006, 14h48   #8
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
Si c'est les valeurs par défaut de ta base je vois pas où intervient PHP enfin bref...

Ta requête se passe bien mais quand tu mets une valeur vide c'est vraiment une valeur vide qui rentre dans ta base alors que toi tu veux une valeur par défaut que tu as défini dans ta BDD, pas dans ton code PHP c'est bien ça ?
Mais c'est quoi la différence qu'il y a entre cette requête et celles que tu fais dans les autres pages si elles marchent (elles tapent dans la même table ?) ?
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2006, 15h12   #9
Membre actif
 
Avatar de kevinf
 
Développeur informatique
Inscription : juin 2005
Messages : 839
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2005
Messages : 839
Points : 165
Points : 165
En fait, c'est toutes ces données là qui ont une valeur par defaut, mais qui rentre vide dans ma base :
'$commandes', '$etat', '$infos', '$fini', '$ban', '$mess1', '$mess2'
__________________
KevinF
kevinf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/06/2006, 08h28   #10
Membre actif
 
Avatar de kevinf
 
Développeur informatique
Inscription : juin 2005
Messages : 839
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2005
Messages : 839
Points : 165
Points : 165
Personne ne sait?
__________________
KevinF
kevinf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2006, 15h53   #11
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Par défaut Récapitulons se que tu t'exprimes

Je récapitule.
Dans ta base de données tu as définit des valeurs par défaut. Dans tes formulaires si jamais l'utilisateur ne place rien tu souhaitais que ça soit les valeurs par défaut définit dans la base de données du moin la table qui puisse être affiché ?
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2006, 15h54   #12
Membre actif
 
Avatar de kevinf
 
Développeur informatique
Inscription : juin 2005
Messages : 839
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2005
Messages : 839
Points : 165
Points : 165
Je n'ai meme pas les champs dans mon formulaire, je souhaite qu'il soit obligatoirement par défault. Mais ca me met un champ vide.
__________________
KevinF
kevinf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2006, 19h22   #13
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
c'est toninsert qui n'est pas bon....puisque tu met des variables pour les champs que tu veus par défaut

pour faire simple tu as 3 variable que tu as récuéré a,b,c et que tu veut mettre dans ta table qui en comporte 5 donc 2 (c et d ) avec des valeurs tpar défaut tu fait donc:

insert into ta_table (`a`,`b`,`c`) values ('$a','$b','$c')

or toi tu fais :

insert into ta_table values ('$a','$b','$c','$c','$d')

jespere avoir été claire j'ai utilisé un exemple pasque tons elect est tres long
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2006, 19h33   #14
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Ben c'est justement ce que je voulais démontrer car c'est une erreur assez courant comme erreur.
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2006, 20h46   #15
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
j'avou surtou que suffi de regarder comment utiliser insert...et on a la réponse...
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2006, 09h09   #16
Membre actif
 
Avatar de kevinf
 
Développeur informatique
Inscription : juin 2005
Messages : 839
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2005
Messages : 839
Points : 165
Points : 165
Daccord, et comment faire pour enlever cette erreur et que les valeurs par défaut puisse se mettrent ?
__________________
KevinF
kevinf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2006, 09h13   #17
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
mais regarde mon exemple rooo!!
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2006, 10h19   #18
Membre actif
 
Avatar de kevinf
 
Développeur informatique
Inscription : juin 2005
Messages : 839
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2005
Messages : 839
Points : 165
Points : 165
Donc il ne faut pas que j'insert les valeurs qui sont par defaut
__________________
KevinF
kevinf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2006, 10h43   #19
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
voila tu precise les valeur que tu insere et t'insere que celle la suit monexemple
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2006, 10h44   #20
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Citation:
Envoyé par kevinf
Donc il ne faut pas que j'insert les valeurs qui sont par defaut
Voila les valeurs par defaut sont effectif si il y a rien eu dessus. placer le champs à "vide" = quelque chose. Donc avant d'écrire il faut vérifier si la valeur rentré possede quelque chose.
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h51.


 
 
 
 
Partenaires

Hébergement Web