Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
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 05/05/2007, 13h22   #1
Invité régulier
 
Inscription : avril 2007
Messages : 38
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 38
Points : 8
Points : 8
Par défaut [PHP] Erreur dans une requête

Bonjour,
je fait le BDD pour gerer les notes de mon institut où je fais mes etudes.
Je ne vois aucune erreur dans cette code ci-dessous mais tout de meme la code n' arrive pas à insere les données dans la table convenable(Etudiant). Je pensais que je n' arrivais pas à contacter avec la base de données mais comme le code fait bien la selection, ce pas le cas. J' ai essayé de verifier avec
Code :
 echo $_POST["Adresse"];
si je recoupere les valeurs. Pas de problemes je les recoupere, mais je n' arrive pas toujours à inserer(la partie du code INSERT INTO) les valeures dans la table convenable les valeures.
Ne pouviez vous pas m' aider?
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
 
 
 
<?php
require_once 'connectIFG.php';
?>
 
 
 
<?php
 
echo '<h1 align=center>Ajouter un etudiant</h1>
<form name=form_etudiant method=POST action="./Ajouter_Etudiant.php">
 
<table border=1 align=center>
 
<TR>
<TD>
<label> Prenom </label> 
</TD>
<TD>
<input type="text" name="Etudiant_Prenom"><BR>
</TD>
</TR>
 
<TR>
<TD>
<label> Nom </label> 
</TD>
<TD>
<input type="text" name="Etudiant_Nom"><BR>
</TD>
</TR>
 
<TR>
<TD>
<label> Adresse </label> 
</TD>
<TD>
<input type="text" name="Adresse"><BR>
</TD>
</TR>
 
<TR>
<TD>
<label> Date_Naissence </label> 
</TD>
<TD>
<input type="text" name="Date_Naissence"><BR>
</TD>
</TR>
 
<TR>
<TD>
<input type="submit" name=Valider_Etudiant value="valider">
</TD>
</TR>
</TABLE>
</form>
';
 
    IF (isset($_POST['Valider_Etudiant'])) { 
 echo $_POST["Adresse"];
 
       $query='INSERT INTO Etudiant
         (ID,Prenom,Nom,Addresse,Date_Naissence)   
         VALUES ("",
                    "' . $_POST["Etudiant_Prenom"] . '",
                    "' . $_POST["Etudiant_Nom"] . '",
                    "' . $_POST["Adresse"] . '",
                    "' . $_POST["Date_Naissence"] . '",
                    )';
 
 
      IF (($result = mysql_query($query)) == 0) {
	echo mysql_error($query);
      } 
   }
 
  $query='select * from Etudiant';
 
 IF (($result = mysql_query($query)) == 0) {
    echo mysql_error() . $query;
  } 
 
	else{
 
echo'
<table border=1 align=center>
<TR>
<TH> Prenom</TH>
<TH>Nom</TH>
<TH>Adresse</TH>
<TH>Date_Naissence</TH>
</TR>';
while ($row=mysql_fetch_array($result)){
echo '
<TR>
<TD>'
.$row['Prenom'].'
</TD>
<TD>'
.$row['Nom'].'
</TD>
<TD>'
.$row['Addresse'].'
</TD>
<TD>'
.$row['Date_Naissence'].'
</TD>
</TR>
';
}
echo '</table>';
}
 
?>

Merci d' avance.
otari est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2007, 13h38   #2
Membre éprouvé
 
Avatar de Schmorgluck
 
Inscription : mai 2006
Messages : 349
Détails du profil
Informations personnelles :
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : mai 2006
Messages : 349
Points : 435
Points : 435
"Addresse", ou "Adresse" ? Je vois les deux tout à tour dans ton code. Ce ne serait pas ça ton problème ?
Schmorgluck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2007, 13h51   #3
Membre chevronné
 
Avatar de gerald2545
 
Inscription : février 2003
Messages : 643
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 643
Points : 660
Points : 660
essaye de supprimer la virgule de la ligne
Code :
"' . $_POST["Date_Naissence"] . '",
gerald2545 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2007, 15h18   #4
Membre éprouvé
 
Avatar de Schmorgluck
 
Inscription : mai 2006
Messages : 349
Détails du profil
Informations personnelles :
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : mai 2006
Messages : 349
Points : 435
Points : 435
Je poursuis sur l'orthographe : sérieusement, c'est loin d'être optionnel, une orthographe un minimum correcte, même dans du code informatique. Dans l'état actuel de ton programme, si quelqu'un veut essayer de le réutiliser ou le faire évoluer, il se prendra probablement message d'erreur sur message d'erreur, tout ça parce que, par réflexe, il aura écrit "naissance" correctement. D'ailleurs, toi-même, il risque de t'arriver de l'écrire correctement, accidentellement. Je te recommande vivement de faire un petit effort de ce côté.
Schmorgluck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2007, 15h40   #5
Membre chevronné
 
Avatar de gerald2545
 
Inscription : février 2003
Messages : 643
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 643
Points : 660
Points : 660
+1 pour l'orthographe
et je rajouterai aussi qu'un message plus clair n'aurait rien gâché, au contraire.
gerald2545 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2007, 16h23   #6
Expert Confirmé
 
Inscription : août 2006
Messages : 3 196
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 3 196
Points : 3 343
Points : 3 343
hol,

+1 pour l'orthographe

J'ajoute : j'espère que ce n'est pas toi qui va faire la doc du logiciel, sinon il faudra également fournir un décodeur
__________________
Il court en ce moment une espèce de grippe, mais elle ne court pas très vite, car on peut l'attraper sans courir.
droggo est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2007, 10h55   #7
Invité régulier
 
Inscription : avril 2007
Messages : 38
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 38
Points : 8
Points : 8
Citation:
Envoyé par Schmorgluck
"", ou "Adresse" ? Je vois les deux tout à tour dans ton code. Ce ne serait pas ça ton problème ?
Merci pour l' attention.

Bien que j' ai "Addresse" et "Adresse" il faut dir que la premiere occurence est le nom du colonne de la table Etudiant dans le BDD et la deuxieme ("Adresse") c' est la variable HTML. Ils sont des choses totalement differentes Donc ce n' est pas une probleme.
otari est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2007, 11h32   #8
Invité régulier
 
Inscription : avril 2007
Messages : 38
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 38
Points : 8
Points : 8
Citation:
Envoyé par gerald2545
essaye de supprimer la virgule de la ligne
Code :
"' . $_POST["Date_Naissence"] . '",
Ton conseil a remedié mon code.
Merci beaucoup.
otari est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2007, 13h27   #9
Invité régulier
 
Inscription : avril 2007
Messages : 38
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 38
Points : 8
Points : 8
En général vous m' avez donné un bon conseil d' être plus fort en orthographe française(que faire? Parfois les français ils mêmes font graves fautes orthographiques) tandis qu' il s' agissait du syntaxe SQL.

Merci à ceux qui m' ont vraiment aidé.
Merci à ceux qui ont voulu de m' aider.

Également je veux remercier ceux qui m' ont taquiné.
otari est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2007, 13h33   #10
Membre chevronné
 
Avatar de gerald2545
 
Inscription : février 2003
Messages : 643
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 643
Points : 660
Points : 660
OK, mais juste pour préciser :
Citation:
je fait le BDD pour gerer les notes de mon institut où je fais mes etudes.
Je ne vois aucune erreur dans cette code ci-dessous mais tout de meme la code n' arrive pas à insere les données dans la table convenable(Etudiant). Je pensais que je n' arrivais pas à contacter avec la base de données mais comme le code fait bien la selection, ce pas le cas. J' ai essayé de verifier avec
ce passage n'étant pas très clair, il n'est pas forcément facile d'aider par la suite. Il fallait faire un effort pour décrypter le message, donc passer plus de temps (que nous n'avons pas forcément) que ce qu'il aurait fallu : ce n'est pas très agréable.
Mais au final, ton souci est résolu donc pas de souci......

A+
gerald2545 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2007, 13h53   #11
Membre éclairé
 
Inscription : janvier 2005
Messages : 336
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : janvier 2005
Messages : 336
Points : 353
Points : 353
J'ajouterais qu'il faut également faire attention aux données inserés, et ainsi créer des failles de sécurités dans son code.

Il convient de passer les champs avant de les insérés dans la base à la fonction pg_escape_string

donc le code
Code :
"' . $_POST["Date_Naissence"] . '",
devient
Code :
"' . pg_escape_string($_POST["Date_Naissence"]) . '",
__________________
Christophe Chauvet (KrysKool)
kryskool 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 10h39.


 
 
 
 
Partenaires

Hébergement Web