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

Langage PHP Discussion :

Récupération d'une variable avec GET


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    sans emploi
    Inscrit en
    Février 2014
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : sans emploi
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2014
    Messages : 365
    Points : 131
    Points
    131
    Par défaut Récupération d'une variable avec GET
    Bonjour,
    Je travaille un tuto.

    Sur la page index.php on trouve un lien menant à la page lire_sujet en transmettant à la variable id_sujet_a_lire la valeur $donnee['id'] :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo '<a href="./lire_sujet.php?id_sujet_a_lire=' , $donnee['id'] , '">' , htmlspecialchars(trim($donnee['titre'])) , '</a>';
    Sur la page lire_sujet.php on trouve une requête ou on récupère la variable id_sujet_a_lire avec la methode GET:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $sql = 'SELECT auteur, message, date_reponse FROM forum_reponses WHERE correspondance_sujet="' . $_GET['id_sujet_a_lire'] . '" ORDER BY date_reponse ASC';
    $requete1=$bdd->query($sql) or die(print_r($bdd->errorInfo()));
    Problème: lorsque je clique sur le lien de la page index.php le message suivant apparait:
    Array ( [0] => 42S22 [1] => 1054 [2] => Unknown column 'correspondance_sujet' in 'where clause' ) 1

    J'ai beau chercher je ne trouve pas ... Pouvez vous m'aider?

    Cordialement

  2. #2
    Membre éclairé Avatar de Lekno
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2010
    Messages
    883
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 883
    Points : 761
    Points
    761
    Par défaut
    Fais un echo sur ta variable, $sql afin de voir la requete complète et mieux interpreter l'erreur

  3. #3
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Ben ça dit juste que la colonne correspondance_sujet n'existe pas dans ta table forum_reponses.

    Et si j'étais toi, j'arrêterais tout de suite de suivre ce genre de tutoriel pourri ... Ils n'expliquent même pas comment se prémunir des injections SQL et laissent des failles béantes dans leurs tutos ... C'est à jeter à la poubelle et si tu l'utilises, tu vas très certainement subir des attaques.

  4. #4
    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
    Bonsoir.

    Il me semble qu'il y ait un problème de 'quote' et "double quote" dans votre requête...

    Passez par une variable intermédiaire pour éviter cette complication :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $CLEF = $_GET['id_sujet_a_lire'] ;
     
    $sql = "SELECT * FROM forum_reponses WHERE correspondance_sujet='$CLEF' ORDER BY date_reponse ASC" ;
    ou bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "SELECT * FROM forum_reponses WHERE correspondance_sujet=\"$CLEF\" ORDER BY date_reponse ASC" ;
    P.S : SSI (si et seulement si) votre table forum_reponses est correctement construite. Cela va sans dire mais c'est mieux en le disant...

  5. #5
    Membre habitué
    Homme Profil pro
    sans emploi
    Inscrit en
    Février 2014
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : sans emploi
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2014
    Messages : 365
    Points : 131
    Points
    131
    Par défaut
    Merci ca marche.

    Bisûnûrs: en fait je cherche a refaire l'exercice en actualisant le code. Une fois que l'ossature sera faite je vais travailler la sécurité ... injection sql.

    Cordialement

  6. #6
    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
    L'erreur a été corrigée dans le code qui avait été fourni au départ...
    Mais il y en avait bien une !...

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

Discussions similaires

  1. [MySQL] Problème avec la récupération d'une variable dans un lien pour un panier
    Par roy-mustang dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 23/06/2011, 13h58
  2. [MySQL] problème avec la récupération d'une variable session
    Par roy-mustang dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 16/06/2011, 15h01
  3. problème d'envoi d'une variable avec get
    Par ANISSS dans le forum Langage
    Réponses: 7
    Dernier message: 23/02/2007, 12h49
  4. Réponses: 7
    Dernier message: 13/03/2006, 15h39
  5. Désigner une variable avec une variable?
    Par littleman dans le forum Paradox
    Réponses: 4
    Dernier message: 12/08/2002, 11h21

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