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 le paramètrage 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 le paramètrage d'une variable dans un lien pour un panier
    bonjour je suis débutant sur php donc 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 modifications 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
    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ée en paramétrage dans le lien URL tel que je veux) 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  

  2. #2
    Membre confirmé Avatar de zulad
    Homme Profil pro
    creatif
    Inscrit en
    Juin 2007
    Messages
    713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : creatif

    Informations forums :
    Inscription : Juin 2007
    Messages : 713
    Points : 519
    Points
    519
    Par défaut
    Tu devrais coder en mvc, tu aurais moins de problème pour passer des valeurs et au final tu auras moins de segments de code inutiles.

    De plus, si tu passe ta valeurs de liste par le client, tu dois prévoir un mapping correct avec ta DB par un objet html qui stocke les données du customer sur ta page, ce que je n'ai pas vu dans ton code.

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. Réponses: 2
    Dernier message: 16/11/2007, 18h38
  3. Réponses: 3
    Dernier message: 06/05/2007, 20h11
  4. Problème avec l'ajout d'une API dans Eclipse
    Par patachnouk dans le forum Eclipse
    Réponses: 6
    Dernier message: 18/08/2006, 16h49
  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