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

EDI, CMS, Outils, Scripts et API PHP Discussion :

Variable passé par $_GET.


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Debutant php
    Inscrit en
    Juin 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Suisse

    Informations professionnelles :
    Activité : Debutant php

    Informations forums :
    Inscription : Juin 2018
    Messages : 20
    Par défaut Variable passé par $_GET.
    Bonjour,

    Je suis en train de faire une page concernant les vins et j'aimerais depuis un menu et sous-menu afficher les vins en fonction du type comme Rouge, Rose ou Blanc. Sauf que quand j'envoie la variable depuis un lien href sur l'autre page j'ai une erreur et je n'arrive pas a afficher seulement les vins Rouge.
    Voici le code de mes page. Merci

    Page menuSite.html
    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
    <html> 
     
    <head> <link rel="stylesheet" type="text/css" href="style.css"> 
     
    <ul id="menu-accordeon"> 
    <li><a href="#">Le Domaine</a> 
    <ul> 
    <li><a href="#">Accueil</a></li> 
    <li><a href="#">Contact</a></li> 
    </ul> </li>
     <li><a href="#">Les Vins</a> 
    <ul> 
    <li><a href="listeVinRouge.php?typVin=Rouge">Rouge</a></li>
    <li><a href="#">Rose</a></li>
     <li><a href="#">Blanc</a></li>
     </ul> </li> 
    </ul> </li> </ul>
    </head>
    </html>
    Page listeVinRouge.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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    <?php
    session_start(); 
    $email = $_SESSION['email']  ;
    //echo $email;
    $carton = 6;
    $typVin = $_GET['typVin'];
     
    //echo $typVin;
     
     
    if (isset($_SESSION['panier']))
    	{ //si il y a une comande dans le caddie alors on affiche un lien au caddie 
    echo "<div align='right'><a href='listePanier.php'><b>VOIR CADDIE</b></a></div><br><br>";
    }
     
    try
    {
    	// On se connecte à MySQL
    	$bdd = new PDO('mysql:host=localhost;dbname=      ;charset=utf8', '     ', '    ');
    }
    catch(Exception $e)
    {
    	// En cas d'erreur, on affiche un message et on arrête tout
            die('Erreur : '.$e->getMessage());
    }
    // Si tout va bien, on peut continuer
     
    // On récupère tout le contenu de la table Vin
    $reponse = $bdd->query("SELECT idVin,nomVin,typeVin,descriptionVin,prixVin,capaciteVin,stockVin FROM Vin WHERE typeVin=".$typVin."");
     
     
     
    // On affiche chaque entrée une à une
    while ($donnees = $reponse->fetch())
    {
    ?>	
      <form action="ajouterpanier.php" method="POST"> 
     
     
     <?php
     
       echo $donnees['nomVin']; ?><br/><?php
        //$_SESSION['nomVin' ] =  $donnees['nomVin']; 
       echo $donnees['typeVin']; ?><br/><?php
       echo $donnees['descriptionVin']; ?><br/><?php
       echo $donnees['prixVin']; ?><br/><?php
       // $_SESSION['prixVin' ] = $donnees['prixVin'];
      echo $donnees['capaciteVin']; ?><br/> 
    <?php
       $resultat = $carton * $donnees['prixVin']; 
     
       echo $resultat;   ?>
     
     
        <select name="quantite">
            <option value="1">Un</option>
            <option value="2">Deux</option>
            <option value="3">Trois</option>
            <option value="4">Quatre</option>
            <option value="5">Cinque</option>
            <option value="6">Six</option>
            <option value="7">Sept</option>
            <option value="8">Huit</option>
            <option value="9">Neuf</option>
            <option value="10">Dix</option>
        </select>
    <input name="id" type="hidden" value="<?php echo $donnees['idVin'];?>"/>
    <input type="submit"  name="Submit" value="Panier"/>*
     
    </form>
     <br/>
     
    <?php
    }
    $reponse->closeCursor(); // Termine le traitement de la requête
     
    ?>

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    1- Quel est le message d'erreur (complet) ?

    2- il manque des apostrophes (car c'est une chaîne) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .......... WHERE typeVin ='".$typVin."'");
    3- il faut faire ici une requête préparée (prepare / execute) !

  3. #3
    Membre averti
    Homme Profil pro
    Debutant php
    Inscrit en
    Juin 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Suisse

    Informations professionnelles :
    Activité : Debutant php

    Informations forums :
    Inscription : Juin 2018
    Messages : 20
    Par défaut
    Tous que j'ai comme message est "Cette page ne fonctionne pas"

  4. #4
    Membre averti
    Homme Profil pro
    Debutant php
    Inscrit en
    Juin 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Suisse

    Informations professionnelles :
    Activité : Debutant php

    Informations forums :
    Inscription : Juin 2018
    Messages : 20
    Par défaut
    En faite ça marche. Merci beaucoup. Mais a part ça si j'avais voulu cacher la valeur dans une variable pour pas qu'elle apparaisse en vrai dans l'url comment j'aurai dû faire?
    Merci

  5. #5
    Membre Expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 59
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par JPphp Voir le message
    Mais a part ça si j'avais voulu cacher la valeur dans une variable pour pas qu'elle apparaisse en vrai dans l'url comment j'aurai dû faire?
    Pourquoi ça te dérange qu'elle passe par l'url ? Sur ce genre de critère de filtre, c'est tout à fait normal de passer par l'url, ce n'est pas une variable sensible.
    Mais dans tous les cas, il faut une requête préparée pour la sécurité.
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  6. #6
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Citation Envoyé par JPphp Voir le message
    En faite ça marche. Merci beaucoup. Mais a part ça si j'avais voulu cacher la valeur dans une variable pour pas qu'elle apparaisse en vrai dans l'url comment j'aurai dû faire?
    Merci
    Bonjour il aurait fallu faire une requête en POST

  7. #7
    Membre extrêmement actif Avatar de psychadelic
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 2 532
    Par défaut
    Citation Envoyé par JPphp Voir le message
    Page menuSite.html
    ta page menuSite.html ne respecte pas les regles d'écriture du langage html.
    la balise <head> englobe du code qui devrait être à la suite et à l'intérieur d'une balise <body> qui elle est absente, ainsi que la déclaration du doctype en première ligne de tout document html.

  8. #8
    Membre averti
    Homme Profil pro
    Debutant php
    Inscrit en
    Juin 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Suisse

    Informations professionnelles :
    Activité : Debutant php

    Informations forums :
    Inscription : Juin 2018
    Messages : 20
    Par défaut
    C'est vrai que mon code n'est pas en règle. Je vais corriger ceci. Merci beaucoup.

Discussions similaires

  1. Récupérer une variable passée par URL sans $_GET
    Par azou_gold dans le forum Langage
    Réponses: 3
    Dernier message: 16/09/2008, 12h09
  2. Syntaxe de variable passé par l'adresse
    Par black is beautiful dans le forum Langage
    Réponses: 3
    Dernier message: 19/12/2007, 17h00
  3. Recupérer un variable passé par l'URL
    Par mael94420 dans le forum Coldfusion
    Réponses: 5
    Dernier message: 17/07/2007, 17h03
  4. Question sur les variables passées par URL
    Par cotlod dans le forum Langage
    Réponses: 7
    Dernier message: 11/10/2006, 00h04
  5. [SQL] Comment utiliser dans une requête une variable passée par URL
    Par foffa dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 31/08/2006, 12h27

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