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 :

Problème avec la récupération d'une variable dans un lien pour un panier


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    108
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 108
    Points : 47
    Points
    47
    Par défaut Problème avec la récupération d'une variable dans un lien pour un panier
    bonjour je suis débutant sur php j'ai du travailler sur un script de panier proposé par developpez.com http://jcrozier.developpez.com/articles/web/panier/
    et j'ai réussi à l’insérer avec des petites modification dans mon script comme suivant exemple page sante-nature.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
    <?php
    session_start();
    include_once("fonctions-panier.php");
    $erreur = false;
    $action = (isset($_POST['action'])? $_POST['action']: (isset($_GET['action'])? $_GET['action']:null
    )) ;
    if($action !== null)
    {
    if(!in_array($action,array('ajout', 'suppression', 'refresh')))
    $erreur=true;
    //récuperation des variables en POST ou GET
    $l = (isset($_POST['l'])? $_POST['l']: (isset($_GET['l'])? $_GET['l']:null )) ;
    $p = (isset($_POST['p'])? $_POST['p']: (isset($_GET['p'])? $_GET['p']:null )) ;
    $q = (isset($_POST['q'])? $_POST['q']: (isset($_GET['q'])? $_GET['q']:null )) ;
    //Suppression des espaces verticaux
    $l = preg_replace('#\v#', '',$l);
    //On verifie que $p soit un float
    $p = floatval($p);
    //On traite $q qui peut etre un entier simple ou un tableau d'entier
    if (is_array($q)){
    $QteArticle = array();
    $i=0;
    foreach ($q as $contenu){
    $QteArticle[$i++] = intval($contenu);
    }
    }
    else
    $q = intval($q);
    }
    if (!$erreur){
    switch($action){
    Case "ajout":
    ajouterArticle($l,$q,$p);
    break;
    Case "suppression":
    supprimerArticle($l);
    break;
    Case "refresh" :
    for ($i = 0 ; $i < count($QteArticle) ; $i++)
    {
    modifierQTeArticle($_SESSION['panier']['libelleProduit'][$i],round($QteArticle[$i]));
    }
    break;
    Default:
    break;
    }
    }
    ?>
    lien pour ajouter un produit donné à mon panier avec l nom du produit q sa quantité et et p son prix(toujours suivant le script proposé par le site)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="sante-nature.php?action=ajout&amp;l=la sante par les produits de la nature&amp;q=1&amp;p=4" ></a>
    et lien qui mène au panier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href="panier.php?action=ajout&amp;l=LIBELLEPRODUIT&amp;q=QUANTITEPRODUIT&amp;p=PRIXPRODUIT" onclick="window.open(this.href, '', 
    'toolbar=no, location=no, directories=no, status=yes, scrollbars=yes, resizable=yes, copyhistory=no, width=600, height=350'); return false;">	</a>
    maintenant je vais vous décrire mon problème, je dois récupérer la quantité à partir d'une liste déroulante pour paramétrer mon lien c'est ce que j'ai fais dans une autre page à fin de tester (sante-nature1.php) vue que la récupération se fait au niveau client avant qu'elle soit envoyé au serveur j'ai du utiliser une fonction javascript
    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
     <script type="text/javascript">
    var t=1;
    function InitUser(p_utilisateur)
    {
        t =p_utilisateur;
    }
    function PageMail() 
    {
        self.location.href="sante-nature1.php?action=ajout&amp;l=la sante par les produits de la nature&amp;q="+t+"&amp;p=4";
    }
    </script> <SELECT name="qtelivre1" onchange="InitUser(this.value);" size="1">
      <OPTION selected="selected" value="1">1</OPTION>
    <OPTION value="2">2</OPTION>
    <OPTION value="3">3</OPTION>
    <OPTION value="4">4</OPTION>
    <OPTION value="5">5</OPTION>
    </SELECT>
                        <a style="CURSOR:pointer" href='#' onClick='PageMail()'; ><img src="motif panier/motif-panier.png" width="44" height="30" alt="panier" /></a>
    et effectivement je parviens à récupérer la quantité du produit ajoutée depuis la liste déroulante dans l'adresse Url (elle est bien affiché dans le lien URL) mais je parviens pas à ajouter la commande dans le panier (voire photo) alors que dans le premier cas comme je vous ai expliqué j'ai aucun problème
    merci pour votre aide je plante grave sur ça !!!!
    Images attachées Images attachées  

Discussions similaires

  1. Problème avec le paramètrage d'une variable dans un lien pour un panier
    Par roy-mustang dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 21/09/2011, 13h07
  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. Récupération d'une variable dans un lien
    Par Meloooo dans le forum Langage
    Réponses: 6
    Dernier message: 19/05/2009, 23h49
  4. Réponses: 3
    Dernier message: 06/05/2007, 20h11
  5. Problème avec l'insertion d'une image dans JPanel
    Par anutka dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 16/03/2006, 10h02

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