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 :

Insertion de données


Sujet :

PHP & Base de données

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Insertion de données
    Bonjour à tous,


    Tout d'abord, je tiens à préciser que je suis nouveau sur ce forum et la première fois que j'utilise sérieusement un forum afin d'interagir avec d'autres personnes.

    Je suis débutant dans l'informatique donc pour moi, les languages SQL et PHP sont inconnus

    Je vous explique mon problème:

    J'ai voulu apprendre le PHP et mySql, donc j'ai installer PhpMyAdmin sur mon NAS Synology (192.168.1.2) . Créer une base de donnée appelée CANTINE_PROJECT_DB . J'ai créer une page html avec un "formulaire" composé d'une case ou il faudrait insérer un Nom qui sera ensuite insérer dans ma base de données. La première page avec le formulaire m'a l'air plutôt pas mal... La deuxième, quand elle s'affiche, ne m'affiche rien, juste une page blanche et quand je regarde sur PhpMyAdmin, je ne vois aucune nouvelle entrée. D'ou mes questions :

    - Comment savoir d'ou l'erreur vient?
    - Est-ce que la connexion à la base de données se fait correctement?


    Merci d'avance pour votre aide et vos réponses !!


    PS : Voici le "code" de ma deuxième page :


    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
    <HTML>
    <BODY>
    <?PHP
    //Récupere les données de la page précedente
    $login = $_POST['Nom'];
    //Connexion à la base de données
    $bdd = 'CANTINE_PROJECT_DB';
    $host = "192.168.1.2" ;
    $user = "root" ;
    $mdp = "" ;
    $connect = mysql_connect($host, $user, $mdp) ;
    mysql_select_db($bdd) or die("Erreur de connexion à la base de donnée" );
    //insertion de la données
    $sql= exec("INSERT INTO Clients VALUES('', '$login', '', '', '', '')"); 
    $result = mysql_query('$sql');
    //On ferme la connexion
    mysql_close();
    ?>
    </BODY>
    </HTML>

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    J'ai voulu apprendre le PHP et mySql
    Dans ce cas, essaye d'apprendre avec les outils adaptés.
    L'extension mysql_* est dépréciée et obsolète, il faut utiliser mysqli_* ou PDO.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql= exec("INSERT INTO Clients VALUES('', '$login', '', '', '', '')");
    Il te sert à quoi ce exec() ?
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Inactif  
    Homme Profil pro
    Inscrit en
    Janvier 2014
    Messages
    374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Janvier 2014
    Messages : 374
    Points : 479
    Points
    479
    Par défaut
    Bonjour.

    Apparemment votre connexion fonctionne. (ajoutez qd même le code erreur SQL)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_select_db($bdd) or die("Erreur de connexion à la base de donnée" . mysql_error());
    En revanche (comme souligné par le modérateur) votre INSERT est mal écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $query = "INSERT INTO Clients VALUES ('', '$login', '', '', '', '')" ;
    $retour = mysql_query($query) ;
    if ( $retour==false ) die("Echec de l'insertion ! " . mysql_error());
    Voici 2 pages qui ressemblent à ce que vous voulez faire !... (c'est une adaptation d'une procédure de connexion)

    page1.html :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <html><head>
    </head><body style="font: 16px verdana;" onload="document.getElementById('nom').focus()"> 
         <FORM method="POST" action="page2.php">
              <br> 
              NOM : <input name="nom" type="text" maxlength=20> ( 1 Majuscule suivie d'au moins 2 minuscules )
              <br><br>
              <input type="submit" style="margin-left=40px; height: 40px;">
         </FORM>
    </body></html>
    page2.php :
    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
    <?php
         $login = $_POST['nom'] ;
     
         if ( ! preg_match("~^[A-Z][a-z]{2,}$~", $login) )
              {
              $log = "<br>La syntaxe de $login n'est pas valide ! " ;
              goto affichage ;
              }
    //   Vous placez ici vos instruction SQL
     
         $log = "<br>Inscription de $login effectuée ! " ;
     
    affichage:       
    ?>
    <html>
    <head></head>
    <body style="font: 16px verdana;">
         <p><?php echo $log ; ?></p>
         Click <a href='page1.html' target='_self'>THERE</a> to return to the form (or use the backward arrow)...
    </body></html>
    Elles sont fonctionnelles... Vous pouvez même les tester en insérant vos instructions SQL.

    PS : il y a aussi des petites choses pratiques...

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/05/2004, 14h32
  2. problème d'insertion de données
    Par Falgan dans le forum ASP
    Réponses: 2
    Dernier message: 06/04/2004, 09h29
  3. [Interbase 7] Problème d'insertion de données
    Par Tuscelan dans le forum InterBase
    Réponses: 12
    Dernier message: 19/11/2003, 22h58
  4. insertion de données
    Par m-l dans le forum SQL
    Réponses: 9
    Dernier message: 25/07/2003, 13h59
  5. [Postgresql] pb lors d'insertion de données
    Par bob20000 dans le forum Requêtes
    Réponses: 8
    Dernier message: 04/11/2002, 15h33

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