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 :

Message lorsque certains produits sont dans le panier


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    s
    Inscrit en
    Juin 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : s

    Informations forums :
    Inscription : Juin 2014
    Messages : 2
    Par défaut Message lorsque certains produits sont dans le panier
    Bonjour tout le monde,
    Voilà j'ai un site e-commerce dans lequel le client peut choisir des produits pour les mettre dans son panier d'achat.

    Mon problème est que je voudrais que je voudrais afficher un message lorsqu'un certain produit et un autre produit sont présents dans ce panier .
    Mon but est de récupérer les identifiants des produits dans le panier et les stocker, puis de vérifier : si l'identifiant x d'un produit et l'identifiant y d'un autre produit sont présent dans le panier alors on affiche un message.

    Je bloque, merci de votre aide. Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function message_panier() {
        for ( $i = 0 ; $i < count($_SESSION['liste']) ; $i++ ) {
            $query = "SELECT id FROM produits WHERE id='".$_SESSION['liste'][$i]['article']."'" ;
            $resultat = mysql_query($query) ;
            $enr = mysql_fetch_array($resultat) ;
        };
        if ($enr[0]=='1010' && $enr[0]=='1014' ) {
            echo "<div class='error-box alert'>";
            echo "<div class='msg'>";echo "La ou les produit(s) sélectionné(es) figurent également dans le pack choisis.
            " ;echo "</div>";
            echo "<a class='toggle-alert' href='#'>";echo"ok";echo "</a>";
            echo "</div>";
        }
    }

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 101
    Par défaut
    Bonjour,

    J'ai l'impression que la phase de requettage est inutile dans ton code car tu selectionne ton critère de filtrage

    Donc le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    for ( $i = 0 ; $i < count($_SESSION['liste']) ; $i++ ) {
    $query = "SELECT id FROM produits WHERE id='".$_SESSION['liste'][$i]['article']."'" ;
    $resultat = mysql_query($query) ;
    $enr = mysql_fetch_array($resultat) ;
     
    };
    pourrait être :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $enr = array();
    foreach($_SESSION['liste'] as $value)
        array_push($enr, $value['article']);
    Ensuite dans ton code d'affichage il y a le problème que tu compare la même case à deux valeurs différentes, ce qui ne renverra jamais VRAI.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if ($enr[0]=='1010' && $enr[0]=='1014' ) {echo "<div class='error-box alert'>";
    echo "<div class='msg'>";echo "La ou les produit(s) sélectionné(es) figurent également dans le pack choisis.
    " ;echo "</div>";
    echo "<a class='toggle-alert' href='#'>";echo"ok";echo "</a>";
    echo "</div>"; }}
    Essai plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    if(in_array('1010', $enr) && in_array('1014', $enr)) {
     
        // Les deux produits sont bien là
     
    } else {
     
        // Les deux produits ne sont pas présents ensemble
     
    }

  3. #3
    Candidat au Club
    Homme Profil pro
    s
    Inscrit en
    Juin 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : s

    Informations forums :
    Inscription : Juin 2014
    Messages : 2
    Par défaut
    Bonjour,

    Effectivement, la phase de requettage est inutile dans le code.

    J'ai essayer ça fonctionne à merveille .

    Merci beaucoup pour ton aide

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

Discussions similaires

  1. [Magento] Ajouter une remise a un produit specifique dans le panier
    Par King_T dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 19/04/2012, 17h31
  2. [PHP 5.0] Comment modifier la quantité de produit existe dans le panier?
    Par hmayda dans le forum Langage
    Réponses: 1
    Dernier message: 22/09/2010, 20h59
  3. [MySQL] Ajout d'un nouveau produit dans un panier
    Par ghyosmik dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 07/09/2006, 15h41
  4. Modifier la quantité d'un produit dans un panier
    Par budiste dans le forum Langage
    Réponses: 22
    Dernier message: 14/02/2006, 09h38

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