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 :

[SQL] Erreur variables html/php [Débutant(e)]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 102
    Points : 86
    Points
    86
    Par défaut [SQL] Erreur variables html/php
    Bonjour,

    Je commence tout juste le php et le html, et je rencontre déjà un problème.
    J'ai une page html:
    Code HTML : 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
    <html>
    <head><B>Bibliothèque</B><br><br><br></head>
    <body>
    Vous pouvez ajouter les oeuvres de votre choix dans la base de données, en indiquant
    le nom de l'oeuvre, l'auteur, la catégorie, un résumé, une critique, une note
     et si possible une image(format gif).
    <form action="biblio.php" method="post" name="AjoutLivre">
    <table cellspacing="2" cellpadding="2" border="0">
    <tr>
    	<td>Titre du livre</td>
    	<td><input type="text" name="Titre"></td>
    </tr>
    <tr>
    	<td>Nom de l'auteur</td>
    	<td><input type="text" name="Auteur"></td>
    </tr>	
    <tr>
    	<td>Catégorie</td>
    	<td><input type="text" name="Categorie"></td>
    </tr>
    <tr>
    	<td>Resume</td>
    	<td><input type="text" name="Resume"></td>
    </tr>
    <tr>
    	<td>Critique</td>
    	<td><input type="text" name="Critique"></td>
    </tr>
    <tr>
    	<td>Note</td>
    	<td><input type="text" name="Note"></td>
    </tr>
    <tr>
    	<td>Image</td>
    	<td>Non disponible</td>
    </tr>
    <tr>
    	<td></td>
    	<td><input type="submit" name="Ajouter le livre"></td>
    </tr>
    </table>
    </form>
    </body>
    </html>

    et une page php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    include "connexion.inc.php";
    $sql="INSERT INTO livre(titre,auteur) 
    	VALUES ($Titre, $Auteur)";
    @mysql_db_query($dbname,$sql,$id_link);
    ?>
    Le problème est quand je click sur le bouton submit, j'arrive sur la page php et j'ai un message m'indiquant que les variables $Titre et $Auteur ne sont pas définie.

    Merci de votre aide,

    Antoine

  2. #2
    Membre averti

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 206
    Points : 319
    Points
    319
    Par défaut
    Je suppose que $Titre et $Auteur sont ceux qui sont donnée par le forumlaire ? Si c'est cela, les variables de ton formulaire sont dans un tableau spécial que PHP utilise : $_POST ou $_GET selon l'attribut METHODE de ton formulaire (ici $_POST), donc ton titre et ton auteur se trouve dans $_POST['Titre'] et $_POST['Auteur']

    Aussi dans tes balises HEAD, enleve tout :o et pour le titre, met le entre les balises <title> </title> et les <br> ne servent à rien dans un header .

    Ha oui aussi, met les données entre guillemets simple dans la requête SQL, sinon tu aura aussi une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <head>
    <title>
    <b>Bienvenue</b>
    </title>
    </head>
    <?php
     
    $sql="INSERT INTO livre(titre,auteur) 
    	VALUES ( '$_POST['Titre']', '$_POST['Auteur']' )";?>

  3. #3
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 102
    Points : 86
    Points
    86
    Par défaut
    J'ai fais les changements que tu m'as conseillé.
    C'est mieux pr le titre.
    Sinon le problème n'est pas résolu pour l'enregistrement des données de mon formulaire, nouveau message:

    Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:\program files\easyphp1-8\www\siteperso\biblio.php on line 4
    Les variables $titre et $auteur sont bien celles de mon formulaire

  4. #4
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 102
    Points : 86
    Points
    86
    Par défaut
    J'ai changé les quotes en guillements, apparement c'est un peu mieux:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $sql="INSERT INTO livre(titre,auteur) 
    	VALUES ( "$_POST['Titre']", "$_POST['Auteur']" )";?>
    mais j'ai tjr un message d'erreur:

    Parse error: parse error in c:\program files\easyphp1-8\www\siteperso\biblio.php on line 4

  5. #5
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 102
    Points : 86
    Points
    86
    Par défaut
    J'ai résolu le problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?
    	$Titre=$_POST['Titre'];
    	$Auteur=$_POST['Auteur'];
     
    include "connexion.inc.php";
    $sql="INSERT INTO livre(titre,auteur) 
    	VALUES ('$Titre','$Auteur')";
    @mysql_db_query($dbname,$sql,$id_link);
    ?>

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

Discussions similaires

  1. [URL Rewriting] erreur RewriteRule html->php
    Par atchoumen dans le forum Apache
    Réponses: 2
    Dernier message: 09/06/2008, 20h05
  2. [SQL] Erreur dans code PHP
    Par Mans91 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 27/06/2007, 10h08
  3. [Mail] Variable de PHP --> mail en HTML --> PHP
    Par JeanMi66 dans le forum Langage
    Réponses: 3
    Dernier message: 09/12/2005, 19h46
  4. [HTML][PHP] Formulaire impossible de récupérer les variables
    Par Pfeffer dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 11/11/2005, 16h08
  5. PHP SQL =>erreur de syntaxe (operateur absent)
    Par snipes dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/02/2005, 14h09

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