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 :

Connexion à la base de données [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 13
    Par défaut Connexion à la base de données
    Bonjour à tous,

    Voilà lors de mes cours, je suis amené à crée un modeste site internet avec lequel je découvre les joies du code, et me voici devant une impasse.
    Je veux crée un formulaire d'inscription et renvoyer les champs inséré dans ce dernier dans ma BDD, mais je me retrouve systématiquement avec un ou plusieurs erreur :/

    voici la dernière version du code que j'ai réalisé :
    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
     
    	//DECLARATION DE LA VARIABLE
    $Nom=$_POST['inputnom'];
    $Prenom=$_POST['inputprenom'];
     
     
    	//PARAMETRE DE CONNEXION A LA BASE DE DONNEES
    $userName="xxxxxxxxx";
    $password="xxxxxxxxxx";
    $baseName="xxxxxxxxxx";
    $server="xxxxxxxxxx";
     
    	//CONNEXION A LA BASE DE DONNEES
    $sourceDeDonnees = "mysql:host=".$server.";dbname=".$baseName;
    $connexion = new PDO($sourceDeDonnees, $userName, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
     
     
    	//CONSTRUCTION DE LA REQUETE
    $sql1 = "INSERT INTO 'test' ('Nom', 'Prenom') VALUES ('$Nom', '$Prenom')";
     
    	//LANCEMENT DE LA REQUETE
    $result=$connexion->query($sql1);
     
    	//FERMETURE MYSQL
    mysql_close();
    ?>
    et voici le message d'erreur :
    Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''test' ('Nom', 'Prenom') VALUES ('test', 'test')' at line 1' in /customers/5/0/3/tqtirf.be/httpd.www/CRASHTEST/AjoutMembre.php:23 Stack trace: #0 /customers/5/0/3/tqtirf.be/httpd.www/CRASHTEST/AjoutMembre.php(23): PDO->query('INSERT INTO 'te...') #1 {main} thrown in /customers/5/0/3/tqtirf.be/httpd.www/CRASHTEST/AjoutMembre.php on line 23
    Si vous pouvez m'aider ce serait avec grand plaisir
    Merci beaucoup

    (ps: j'espère juste être dans la bonne section du forum :S)

    Bonne journée/soirée,
    Stelper

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Par défaut
    Enlève les simples guillements dans cette partie: INSERT INTO 'test' ('Nom', 'Prenom')

    Si le nom de ta table ou tes colonnes utilisent des noms réservés ou spéciaux, utilise des backticks sinon ne mets rien.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    INSERT INTO `test` (`Nom`, `Prenom`) ....

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 13
    Par défaut
    Merci, j'ai fait ce que tu m'as dis, et effectivement l'erreur venait de la.

    Mais, (car oui ce serait trop simple) maintenant j'ai un seconde erreur :
    Warning: mysql_close(): no MySQL-Link resource supplied in /customers/5/0/3/tqtirf.be/httpd.www/CRASHTEST/AjoutMembre.php on line 26
    Je m'étais déjà renseigné sur le sujet, mais sans réel réponse à part que j'essayais de fermer qqch qui n'était pas ouvert :S

    Edit: je viens de mettre le mysql_close en commentaire et j'ai exécuté le code, j'ai effectivement mes champs qui sont importé dans ma BDD pour cela te dois un grand merci!
    mais bon ce petit message d'erreur peut gênant au final est il grave ou sans aucune importance?

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Par défaut
    mysql_close() utilise l'extension mysql, qui est obsolète et que tu devrais éviter comme la peste. Tu n'as pas à l'utiliser puisque tu utilises PDO pour ta connexion.

    Par ailleurs, dans le cadre d'un site web normal, tu n'as pas besoin de fermer les connexions puisqu'elles seront de toutes façon fermées une fois que le script lui-même est exécuté.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 13
    Par défaut
    Ok ok, un grand merci tu as répondu à un problème vieux de plus d'un mois ^^

    Bonne journée.
    Stelper

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

Discussions similaires

  1. [JDBC][MySQL] Connexion à la base de données
    Par El Saigneur dans le forum JDBC
    Réponses: 8
    Dernier message: 04/08/2005, 13h52
  2. ERREUR DE CONNEXION à une base de donnée ACCESS protégée
    Par unionriton dans le forum Bases de données
    Réponses: 4
    Dernier message: 09/05/2005, 09h35
  3. Delphi Connexion à une base de donnée distante par TCP/IP
    Par viecel dans le forum Bases de données
    Réponses: 1
    Dernier message: 12/01/2005, 19h19
  4. Echec lors de la connexion à la base de données.
    Par mclown dans le forum PostgreSQL
    Réponses: 8
    Dernier message: 26/10/2004, 23h36
  5. Réponses: 3
    Dernier message: 29/03/2004, 18h02

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