IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PostgreSQL Discussion :

[PHP] Erreur dans une requête


Sujet :

PostgreSQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 38
    Points : 29
    Points
    29
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
     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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
     
     
     
    <?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.

  2. #2
    Membre confirmé
    Avatar de Schmorgluck
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2006
    Messages : 371
    Points : 558
    Points
    558
    Par défaut
    "Addresse", ou "Adresse" ? Je vois les deux tout à tour dans ton code. Ce ne serait pas ça ton problème ?

  3. #3
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    essaye de supprimer la virgule de la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "' . $_POST["Date_Naissence"] . '",

  4. #4
    Membre confirmé
    Avatar de Schmorgluck
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2006
    Messages : 371
    Points : 558
    Points
    558
    Par défaut
    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é.

  5. #5
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    +1 pour l'orthographe
    et je rajouterai aussi qu'un message plus clair n'aurait rien gâché, au contraire.

  6. #6
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 949
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 949
    Points : 5 665
    Points
    5 665
    Par défaut
    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

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 38
    Points : 29
    Points
    29
    Par défaut
    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.

  8. #8
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 38
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par gerald2545
    essaye de supprimer la virgule de la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "' . $_POST["Date_Naissence"] . '",
    Ton conseil a remedié mon code.
    Merci beaucoup.

  9. #9
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 38
    Points : 29
    Points
    29
    Par défaut
    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é.

  10. #10
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    OK, mais juste pour préciser :
    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+

  11. #11
    Membre averti

    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 338
    Points : 404
    Points
    404
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    "' . $_POST["Date_Naissence"] . '",
    devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "' . pg_escape_string($_POST["Date_Naissence"]) . '",

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. erreur dans une requête sql dans une fonction php
    Par frboyer dans le forum Langage
    Réponses: 3
    Dernier message: 07/04/2009, 13h37
  2. #Erreur dans une requête avec une fonction personnalisée
    Par pguiheu dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 04/07/2006, 15h45
  3. [MySQL] Erreur dans une requête
    Par sagitarium dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 13/05/2006, 21h38
  4. [MySQL] Erreur dans une requête sql
    Par Goundy dans le forum PHP & Base de données
    Réponses: 37
    Dernier message: 30/01/2006, 16h08
  5. [VBA] Erreur dans une requête
    Par Damsou dans le forum Access
    Réponses: 31
    Dernier message: 21/06/2005, 17h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo