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 :

Ecriture dans ma BdD


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2022
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2022
    Messages : 16
    Points : 8
    Points
    8
    Par défaut Ecriture dans ma BdD
    Bonjour tout le monde

    Je travaille en ce moment sur un projet cependant je n'arrive pas a ecrire dans ma base de donné cela fait plusieur jour que je cherche que ce soit par moi meme ou sur des forum mais je ne trouve rien.

    voici mon code

    BDD-Priincipales.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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <!DOCTYPE html> 
    <html lang="fr"> 
     
     <head> 
      <meta charset="utf-8"> 
      <title>BDD</title> 
      <link rel="stylesheet" href="" > 
     </head> 
     
     <body>
    <?php	
        $servername = 'localhost';
        $dbname = 'apk_pc';
        $username = 'root';
        $password = '';
        $Type=$_POST['Type'];
        $NomPc =$_POST['NomPC'];
        $NumerosDeSerie =$_POST['NumerosDeSerie'];
        $Utilisateurs =$_POST['Utilisateurs'];
        $Emplacement =$_POST['Emplacement'];
     
    		try {
    		$dbco = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
        $dbco->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
     
        $sth=$dbco->prepare ("
        INSERT INTO listepc ( Type,NomPC,NumerosDeSerie,Utilisateurs,Emplacement)
        VALUES ('$Type','$NomPc', '$NumerosDeSerie','$Utilisateurs','$Emplacement')
                               ");
    		$sth->execute();
        echo 'Entrée ajoutée dans la table';
    	}            
    	catch(PDOException $e){
    	  echo "Erreur : " . $e->getMessage();
    	}
    ?>
    </body> 
    </html>
    tables.html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     <form method="POST" actions ="BDD-Priincipale.php">
                                <label for="pass"> Type :</label>
                                <input type="text" name="Type"/><br/>
                                <label for="pass"> Nom du PC :</label>
                                <input type="text" name="NomPC "/><br/>
                                <label for="pass"> Numeros de serie :</label>
                                <input type="text" name="NumérosDeSérie"/><br/>
                                <label for="pass"> Utilisateur :</label>
                                <input type="text" name="Utilisateurs "/><br/>
                                <label for="pass"> Emplacement :</label>
                                <input type="text" name="Emplacement"/><br/>
                                <input type="submit" value="Validé"  /><br/>

    voila cela serait super si vous pouviez m'aider
    merci d'avance.

    PS; je viens de déplacer ce sujet donc il se peut que vous le voyer déjà mais dans la mauvaise sections

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 236
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 236
    Points : 8 499
    Points
    8 499
    Billets dans le blog
    17
    Par défaut
    Attention, les champs HTML et clefs de $_POST n'ont pas la même écriture (NumérosDeSérie vs NumerosDeSerie)

    Quel est le message d'erreur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        $sth=$dbco->prepare ("
        INSERT INTO listepc ( Type,NomPC,NumerosDeSerie,Utilisateurs,Emplacement)
        VALUES ('$Type','$NomPc', '$NumerosDeSerie','$Utilisateurs','$Emplacement')
                               ");
    		$sth->execute();
    Tu utilises mal la requête préparée.

    Soit tu exécute directement la requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $sql = <<<SQL 
        INSERT INTO listepc (Type, NomPC, NumerosDeSerie, Utilisateurs, Emplacement)
        VALUES (
            {$pdo->quote($Type)},
            {$pdo->quote($NomPc)}, 
            {$pdo->quote($NumerosDeSerie)},
            {$pdo->quote($Utilisateurs)},
            {$pdo->quote($Emplacement)}
        )
        SQL;
     
    echo "[DEBUG] {$sql}";
     
    $pdo->query($sql);
    Soit tu utilises des placeholders comme dans les exemples ici : https://www.php.net/manual/fr/pdostatement.execute.php

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2022
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2022
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Bonjour

    Merci de ta réponse pour ce qui est du message d'erreur il n'y en aucun qui apparait et pour ce qui est du reste je vais m'empresser 'aller essayer ca

    PS: desolée pour le temp de réponse c juste que le week end je deconnécte histoire de revenir l'esprit clair le lundi

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2022
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2022
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    re
    Alors je viens d'essayer le code que tu propose mais g du mal comprendre comment il fallait l'utiliser car il ne marche pas cependant g essayé avec des placeholders et cela donne ceci :
    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
    <?php	
        $servername = 'localhost';
        $dbname = 'apk_pc';
        $username = 'root';
        $password = '';
     
    		try {
        $strConnection = 'mysql:host=localhost;dbname=apk_pc'; //Ligne 1
        $arrExtraParam= array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8");
        $dbco = new PDO($connStr, 'username', 'password',$arrExtraParam);
        $dbco->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    }
    catch(PDOException $e) {
        $msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
        die($msg);
    }
        $sth= ("
        INSERT INTO listepc ( Type,NomPC,NumerosDeSerie,Utilisateurs,Emplacement)
        VALUES ('?','?', '?','?','?')
                               ");
        $prep = $dbco->prepare($sth);
        $prep->bindValue(1, $_POST['Type'], PDO::PARAM_STR);
        $prep->bindValue(2, $_POST['NomPC'], PDO::PARAM_STR);
        $prep->bindValue(3, $_POST['NumerosDeSerie'], PDO::PARAM_STR);
        $prep->bindValue(4, $_POST['Utilisateurs'], PDO::PARAM_STR);
        $prep->bindValue(5, $_POST['Emplacement'], PDO::PARAM_STR);
     
        $prep->execute();
     
     
        $arrAll = $prep->fetchAll();
     
        //$Type=$_POST['Type'];
        //$NomPc =$_POST['NomPC'];
       // $NumerosDeSerie =$_POST['NumerosDeSerie'];
       // $Utilisateurs =$_POST['Utilisateurs'];
       // $Emplacement =$_POST['Emplacement'];
     
    ?>
    </body>

    néanmoins cela ne fonctionne pas pour une raison que j’ignore

Discussions similaires

  1. [PDO] Page d'inscription - Ecriture dans la BDD
    Par tengalice49 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 21/05/2018, 13h44
  2. Ecriture dans la BDD
    Par nofaceinside dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 10/10/2016, 13h07
  3. [PDO] Ecriture dans la bdd
    Par batala dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 18/03/2014, 09h06
  4. Ecriture dans une BDD access via Excel
    Par kpitaine dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 03/08/2009, 12h50
  5. [AJAX] Ecriture de balise html dans une BDD avc AJAX
    Par togzz dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/11/2008, 10h59

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