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 04/07/2011, 14h20   #1
 
Homme
Inscription : mai 2011
Messages : 2
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Tunisie

Informations forums :
Inscription : mai 2011
Messages : 2
Points : -1
Points : -1
Par défaut probleme primary key

salut a tous,
j'ai créé une base de données:

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
<?php
$con = mysql_connect("localhost","root","");
if (!$con)
  {
  echo('pas de connection: ' );
  }
 
// Create database
if (mysql_query("CREATE DATABASE projet2",$con))
  {
  echo "la base est créée";
  }
else
  {
  echo "problème de creation de base de donées: " ;
  }
 
// Create table
mysql_select_db("projet2", $con);
$sql = "create table ijf
(
Themedeformation varchar(30),
Typedeformation varchar(15),
Nom varchar(30),
Prenom varchar(30),
Datedenaissance varchar(23),
lieudenaissance varchar(14), 
sexe varchar(27), 
Identite varchar(27),
Numero int NOT NULL,
PRIMARY KEY (Numero),
Nationalite varchar(50),
Niveaudetude varchar(13),
Adresse varchar(50),
GSM int(12),
Email varchar(16),   
Ville varchar(13))";
 
// Execute query
mysql_query($sql,$con);
 
mysql_close($con);
?>
code d'insertion:
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans nom</title>
<script language="javascript">
function control(form1){
 
	with(form1){
		if(NOM.value=="")
		{alert('saisir votre nom '); return false;}
		if(PRENOM.value=="")
		{alert('saisir votre prenom '); return false;}
		if(date.value=="")
		{alert('saisir votre date '); return false;}
		if(LIEU.value=="")
		{alert('saisir votre LIEU '); return false;}
		if(isNaN(NUMERO.value) || ((NUMERO.value).length)!=8 )
		{alert('le cin doit comporter 8 chiffre '); return false;}
		if(NATIONALITE.value=="")
		{alert('saisir votre NATIONALITE '); return false;}
		if(NIVEAU.value=="")
		{alert('saisir votre NIVEAU '); return false;}
		if(ADRESSE.value=="")
		{alert('saisir votre ADRESSE '); return false;}
		if(gsm.value=="")
		{alert('saisir votre gsm '); return false;}
		if(EMAIL.value=="")
		{alert('saisir votre EMAIL '); return false;}
		if(VILLE.value=="")
		{alert('saisir votre VILLE '); return false;}
	}
}
</script>
</head>
 
<body background="desine/PHOTO/IN.jpg">
<?php
if(isset($_POST['envoi'])){
 header ('location:merci.php');
}
?>
<form   method="post" name="form1" onsubmit="return(control(this))" >
<table width="698" align="center" border="11" bgcolor="#000000" > 
 
  <td width="698" align="justify">
  <fieldset>
  <p>      <font color="#CC0000" face="Arial, Helvetica, sans-serif"  size="+2"><blink></blink></font><font color="#CC0000" face="Arial, Helvetica, sans-serif"  size="+2">
<p>   <font color="#CC0000" face="Arial, Helvetica, sans-serif"  size="+2"><blink><center>Inscription en ligne</center>
&agrave;l'Institut Jnina Formation</blink></font></p> 
</fieldset>
 
 <tr><td width="699">
<p><fieldset>
  <b><font color="#FF0000"> Th&eacute;me de formation &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font></b>  <select name="option1">
    <option>web master</option>
    <option>Technique bancaire</option>
    <option>Multimedia</option>
    <option>Animatrice Jardin d'Enfant </option>
    <option>Comptable d'entreprise</option>
  </select> </fieldset></td></tr>
  <br>
 <tr><td colspan="2"><fieldset><b><font color="#FF0000"> Type de formation:</font></b></b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<select name="option2">
    <option>Cap</option>
    <option>Btp</option>
    <option>Bts </option>
 
  </select></fieldset> 
  </td></tr>
  <br>
 <tr><td colspan="2"> <fieldset><b><font color="#FF0000"> Nom:</font></b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  <input type="text" name="NOM"> </fieldset></td></tr>
  <BR>
<tr> <td colspan="2"><fieldset>  <b><font color="#FF0000"> Pr&eacute;nom:</font></b>&nbsp;&nbsp;
    <input  type="text" name="PRENOM"> </fieldset></td></tr>
  <BR>
<tr> <td colspan="2"><fieldset>  <b><font color="#FF0000"> date de naissance:</font></b>&nbsp;&nbsp;
    <input  type="text" name="date"> </fieldset></td></tr>
  <br>
<tr><td colspan="2"><fieldset> <b><font color="#FF0000"> lieu de naissance</font></b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  <input  type="text" name="LIEU" width="269"> </fieldset></td></tr> 
  <br>
  <tr>
  <td colspan="2"><fieldset>
 <b><font color="#FF0000"> sexe:</font></b>&nbsp;&nbsp;&nbsp;&nbsp;
  <select name="option6"> 
   <option>homme</option>
    <option>femme</option> </select>
  <br /></fieldset><fieldset>
 <b> <font color="#FF0000">Identit&eacute;</font> </b>
  <select name="option7">
    <option>CIN</option>
    <option>Passeport</option>
  </select> </fieldset><br /><fieldset>
 <b><font color="#FF0000"> Num&eacute;ro :</font></b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  <input type="text" name="NUMERO" /> </fieldset></td>
  </tr> 
  <br>
  <br>
  <tr><td colspan="2"><fieldset>
 <b><font color="#FF0000"> Nationalit&eacute;:</font></b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="NATIONALITE"> </fieldset><br /><fieldset>
 <b><font color="#FF0000"> Niveau d'&eacute;tude:</font></b>
  <input type="text" name="NIVEAU" /> </fieldset></td></tr> 
  <br>
  <br>
  <tr>
  <td colspan="2"><fieldset>
<b> <font color="#FF0000"> Adresse :</font> </b>&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
   <input type="text" name="ADRESSE" /> </fieldset><br /><fieldset>
  <b><font color="#FF0000"> GSM</font> </b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
   <input type="text" name="gsm" /> </fieldset></td> </tr>
  <br>
  <br>
  <tr>
  <td colspan="2"><fieldset>
 <b><font color="#FF0000"> Email</font></b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="EMAIL" /></fieldset>
  </td>
  </tr>
  <tr><td colspan="2"><fieldset>
 <b><font color="#FF0000"> Ville:</font></b> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<input type="text" name="VILLE" /> </fieldset></td> </tr>
  <br>
  <br>
<tr>
<td  colspan="2"> 
 
 
<center>
<input type="submit" value="ENVOYER" name="	envoi" ) >&nbsp;&nbsp;&nbsp;<input type="reset" value="ANNULER" name="envoi"></center>
</td></tr>
</table>
</form>
 
<?php
 
if(isset($_POST['envoi'])){
$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
 
mysql_select_db("projet2", $con);
 
@$sql="INSERT INTO ijf 
VALUES
('$_POST[option1]','$_POST[option2]','$_POST[NOM]','$_POST[PRENOM]','$_POST[date]','$_POST[LIEU]','$_POST[option6]','$_POST[option7]','$_POST[NUMERO]','$_POST[NATIONALITE]','$_POST[NIVEAU]','$_POST[ADRESSE]','$_POST[gsm]','$_POST[EMAIL]','$_POST[VILLE]')";
 
if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
 
 
mysql_close($con)
 
}
?>
</body>
</html>
mais j'ai un problème d'insertion des données dans la base : toujour une insertion vide qui cause le brobleme de PRIMARY KEY.
merci
eljed est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/07/2011, 15h05   #2
Membre actif
 
Homme
Inscription : avril 2011
Messages : 426
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : avril 2011
Messages : 426
Points : 171
Points : 171
Bonjour,

Le problème vient de ton INSERT INTO. En effet, en passant directement par un VALUE(), il est nécessaire de donner quelque chose à tous les champs.

Si ta primary key se trouve dans le premier champ, il faut que tu fasses :

Code :
1
2
INSERT INTO ta_table VALUES
('','$_POST[option1]'...)
Bien-sûr, il faut que ton id son paramétré en auto_increment dans phpmyadmin.
heretik25 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/07/2011, 15h10   #3
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
Mets null à la place de chaine vide dans le premier paramètre de value. Selon la configuration du driver, la chaine vide ne sera pas transformée en null.
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/07/2011, 16h10   #4
Membre actif
 
Homme
Inscription : avril 2011
Messages : 426
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : avril 2011
Messages : 426
Points : 171
Points : 171
Citation:
Envoyé par Benjamin Delespierre Voir le message
Mets null à la place de chaine vide dans le premier paramètre de value. Selon la configuration du driver, la chaine vide ne sera pas transformée en null.

merci pour la précision, je ne savais pas
heretik25 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 23h15.


 
 
 
 
Partenaires

Hébergement Web