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

PHP & Base de données Discussion :

données non insérées dans la BDD (champ vide) [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 11
    Points : 11
    Points
    11
    Par défaut données non insérées dans la BDD (champ vide)
    Bonjour,

    J'ai un problème j'espère que vous pourrez m'aider à le résoudre

    j'ai un formulaire basique en HTML avec 6 champs à remplir (id_salarie, id_pc, nom, prenom, telephone, service) qui utilise la méthode POST


    ce fichier appelle le script add_salarie.php dont voici le code :

    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
    <?php
        // connexion à la base
     
    	$db = mysql_connect('localhost', 'root', 'root')  or die('Erreur de connexion '.mysql_error());
     
    	// sélection de la base  
     
        mysql_select_db('gestion-parc',$db)  or die('Erreur de selection '.mysql_error());
     
        // on écrit la requête sql
        $sql = "INSERT INTO SALARIE(id_salarie,id_pc, nom, prenom, telephone, service) VALUES('$id_salarie','$id_pc','$nom','$prenom','$telephone','$service')";
     
        // on insère les informations du formulaire dans la table
        mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
     
        // on affiche le résultat pour le visiteur
        echo 'Les données on été correctement ajoutées à la table SALARIE.';
     
        mysql_close();  // on ferme la connexion
     
     
    ?>
    PREMIER ESSAI

    Je rentre des valeurs au formulaire je valide le message Les données on été correctement ajoutées à la table SALARIE, apparait.

    Je vais voir dans ma base de données, une ligne a bien été ajouté mais aucune valeur n'apparait, tout les champs sont vides.

    DEUXIEME ESSAI

    avec des valeurs différentes je relance le formulaire voici l'erreur :

    Erreur SQL !INSERT INTO SALARIE(id_salarie, id_pc, nom, prenom, telephone, service) VALUES('','','','','','')
    Duplicate entry '' for key 1

    Logique il veut réinsérer une ligne vierge mais il y en a déja une...

    Quelqu'un a une idée , pourquoi mes valeurs ne sont pas prises en compte surement une erreur de codage PHP ?

    pour info mon serveur mysql est sur un serveur linux (ip 10.0.0.15), j'exécute le formulaire depuis un poste client xp.

    Si depuis le client je me connecte à phpmyadmin (http://10.0.0.15/phpmyadmin), que je vais dans SQL et lance une requete INSERT INTO ... VALUES ('123','456','testnom','test_prenom'....);

    Là sa fonctionne...

    Mais je voudrais faire l'ajout des informations depuis le formulaire html

    Merci pour votre aide

    A++

  2. #2
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut
    Bonsoir et bienvenue,

    D'ou proviennent vos variables " '$id_salarie', '$id_pc', '$nom', '$prenom', '$telephone', '$service' "
    Etes-vous certain qu'elles contiennent bien une valeur.
    Lu kinze d' awousse, la Vierje arandje û dusbrôle lu timp.

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 11
    Points : 11
    Points
    11
    Par défaut
    Bonsoir,

    Effectivement je pensais que mes variables étaient automatiquement créer depuis le formulaire HTML , j'utilise ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="id_salarie" type="text" id="id_salarie" size="20" maxlength="35" />
    je commence tout juste le PHP j'ai regardé les exemples et dessus les variables ne sont pas déclarés surement elles sont sous entendu par l'auteur des exemples

    voici ce que j'ai rajouté au début de mon script php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $id_salarie=$_POST['id_salarie'];
    $id_pc=$_POST['id_pc']; ..........
    Et là tout fonctionne, est ce le bon système que j'utilise ? (si on passe l'absence de contrôle de saisie et autres améliorations...)

    A++

  4. #4
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut
    Re bonsoir,

    C'est tout bon.
    Pour les vérifications commencez par vérifier que les variables contiennent bien une valeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if (!isset($_POST['ma_variable']){
      echo 'Il manque une donnée';
      }
      else{
      $ma_variable = $_POST['ma_variable'];
      }
    Bonne continuation
    Lu kinze d' awousse, la Vierje arandje û dusbrôle lu timp.

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 11
    Points : 11
    Points
    11
    Par défaut
    merci bien pour le code

    bonne soirée

    a++

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

Discussions similaires

  1. Données non afficher dans rapport PDF
    Par laurent_m dans le forum BIRT
    Réponses: 1
    Dernier message: 23/10/2008, 17h54
  2. Réponses: 1
    Dernier message: 17/10/2008, 17h35
  3. Réponses: 8
    Dernier message: 25/09/2007, 08h31
  4. FCKeditor : les accents ne sont pas insérés dans la bdd
    Par Nasky dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 13/07/2007, 14h51
  5. Réponses: 2
    Dernier message: 12/01/2006, 14h54

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