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 :

Problème avec mon panier


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut Problème avec mon panier
    Bonjour
    voila lorsque je rajoute un article dans mon panier il me le rajoute mais ne me met pas tout ce que je lui demande. Voici l'erreur:

    Notice: Undefined index: an in C:\Program Files\EasyPHP 2.0b1\www\panieroriginal.php on line 18
    et voici mon code:
    le panier:

    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
     
    function creationPanier()
    {
    	$ret=false;
     
    	if (isset( $_SESSION['panier']))
    	{
    		$ret = true;
    	} 
    	else
    	{
    		$_SESSION['panier']=array();
    		$_SESSION['panier']['Nom_auteur'] = array();
    		$_SESSION['panier']['Titre'] = array();      
    		$_SESSION['panier']['Prix_vente_euro'] = array();
    		$_SESSION['panier']['Annee'] = array();      
    		$ret=true;
    	}
    		return $ret;
    }

    Et le lien pour ajouter l'article au panier:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href=\"panieroriginal.php?action=ajout&amp;au=".$req2['Nom_auteur']."&amp;t=".$req2['Titre']."&amp;p=".$req2['Prix_vente_euro'].";an=".$req2['Annee']."&amp;\" 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;'>Ajouter au panier</a>
    la fonction permettant d'ajouterun article:
    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
    function ajouterArticle($Nom_auteur,$Titre,$Prix_vente_euro,$Annee)
    {
    	if (creationPanier())
    	{
    		array_push( $_SESSION['panier']['Nom_auteur'],$Nom_auteur);
    		array_push( $_SESSION['panier']['Titre'],$Titre); 
    		array_push( $_SESSION['panier']['Prix_vente_euro'],$Prix_vente_euro);
    		array_push( $_SESSION['panier']['Annee'],$Annee);      
    	}
     
    	else
    	{
    		echo "Un problème est survenu veuillez contacter l'administrateur du site.";
    	}	
    }

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    D'apres ton erreur, $_GET ne contient pas l'index "an".
    As-tu controlé ce que contenait $_GET ?

    Sinon pourquoi vérifies-tu les valeurs de $_GET['action'] ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(in_array( $_GET['action'],array('ajout', 'suppression', 'viderPanier', 'supprimerBD')))

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    Et comment on vérifie ce qu'il y a dedans stp.

    Pour ta deuxième question bah j'ai utilisé un tuto pour faire le panier et ca c'était pas expliqué.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    et voici la fonction qui me permet de créer mon panier:

    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 creationPanier(){
    $ret=false;
     
    if (isset( $_SESSION['panier']))
     $ret = true;
    else
    {
      $_SESSION['panier']=array();
      $_SESSION['panier']['Nom_auteur'] = array();
      $_SESSION['panier']['Titre'] = array();      
      $_SESSION['panier']['Prix_vente_euro'] = array();
      $_SESSION['panier']['Annee'] = array();      
      $ret=true;
    }
    return $ret;
    }

  5. #5
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    ton code pour l'ajout dans le panier 'est pas complet , se devrait être un formulaire or la on n'en a pas !

    Secondo tu ne passe pas de variable 'an' donc quand tu la récupère de l'autre cote bah elle existe pas !

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    dsl j'ai fait n'importe quoi avec le premier poste, je viens de le modifier. Ce que je ne comprend pas c'est qu'il ma met le nom de l'auteur, le prix... mais pas l'année.

  7. #7
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    tu as verifi dans l'url que tu ne transmettait pas une année 'vide' ?

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    et comment tu fais pour le savoir ?

  9. #9
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    bah apparemment tu transmet tes variables par l'URL donc elles devrait être affichées a cet endroit ...

    De plus je viens de voir que tu fais :

    an=".$req2['Annee'] donc tu dois récupérer an et pas année dans ton script !

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    le truc c'est que j'utilise ca pour ajouter, supprimer ou vider le panier.

    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
    if (isset($_GET['action']))
    {
    	if(in_array( $_GET['action'],array('ajout', 'suppression', 'viderPanier', 'supprimerBD')))
    	{	
     
    		$action = $_GET['action'];
    	}
    	switch($action)
    	{
    		Case "ajout":
    		$au=preg_replace('#\v#', '',$_GET['au']);
    		$t=preg_replace('#\v#', '',$_GET['t']);
    		$p=floatval($_GET['p']);
    		$an=intval($_GET['an']);
    		ajouterArticle($au,$t,$p,$an);
    		break;
     
    		Case "suppression":		
    		$t=preg_replace('#\v#', '',$_GET['t']);
    		supprimerArticle($t);
    		break;
     
    		Case "viderPanier":
    		viderPanier();
    		break;
     
    		Default:
    		break;
    	}
    }

  11. #11
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    tu as le code de l'affichage du panier ?

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    voila

    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
    <form method="get" action="panieroriginal.php">
    <table >
    <tr>
          <td colspan="4"><b><font size="4">Votre panier</font></b></td >
    </tr>
    <tr>
          <td width="550"><b>Auteur</b></td>
          <td width="550"><b>Titre</b></td>
    	  <td width="550"><b>Prix</b></td>
          <td width="550"><b>Année</b></td>
          <td width="550"><b>Action</b></td>
    </tr>
     
     
    <?php
    if (creationPanier())
    {
    	$nbArticles=count($_SESSION['panier']['Titre']);
    	if ($nbArticles <= 0)
    	{
    		echo "<tr><td>Votre panier est vide </ td></tr>";
    	}
    	else
    	{
    		for ($i=0 ;$i < $nbArticles ; $i++)
    		{
    			echo "<tr>";
    			echo "<td>".htmlspecialchars($_SESSION['panier']['Nom_auteur'][$i])."</td>";
    			echo "<td>".htmlspecialchars($_SESSION['panier']['Titre'][$i])."</td>";
    			echo "<td>".htmlspecialchars($_SESSION['panier']['Prix_vente_euro'][$i])." €</td>";
    			echo "<td>".htmlspecialchars($_SESSION['panier']['Annee'][$i])."</td>";
    			echo "<td><a href=\"".htmlspecialchars("panieroriginal.php?action=suppression&t=".rawurlencode($_SESSION['panier']['Titre'][$i]))."\">Supprimer l'article<a></td>";
    			echo "</tr>";
    		}  
    		echo "<tr>";
    		echo "<td width='1500'>";
    		echo "Total à payer (hors frais de port) : ".MontantGlobal(); 
    		echo"€";
    		echo "</td></tr>";;
    	}
    }
    ?>
    </form>
    </td>

  13. #13
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    sous quelle forme est 'Annee' ?

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    c'est un entier de 5 chiffre

  15. #15
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    Citation Envoyé par RAtiche Voir le message
    c'est un entier de 5 chiffre
    tu peux me montrer stp ?

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    voila c en pièce jointe
    Images attachées Images attachées  

  17. #17
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    Citation Envoyé par RAtiche Voir le message
    voila c en pièce jointe
    lol tu prévois ton panier pour longtemps lol
    Blague mise a part tu entre bien des années de la forme : 2008 ?

    FAit un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <pre>
    <?php echo var_dump($_SESSION['panier']); ?>
    </pre>

  18. #18
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    Oui les années sont sous cette forme et voila ce qu'il me retourne avec le code que tu m'as donné.

    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
    array(4) {
      ["Nom_auteur"]=>
      array(1) {
        [0]=>
        string(10) "ZOLA Emile"
      }
      ["Titre"]=>
      array(1) {
        [0]=>
        string(21) "Les Rougon-Macquart I"
      }
      ["Prix_vente_euro"]=>
      array(1) {
        [0]=>
        float(35)
      }
      ["Annee"]=>
      array(1) {
        [0]=>
        int(0)
      }
    }
    Il veut pas de l'année, je pige pas.

  19. #19
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    ton prix de vente et ton année sont vides , tu ne dois pas les ajouter correctement !

    tu es sur que ces deux paramètres ne sont pas vide ?

  20. #20
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    certains quand j'affiche l'article et ces détails ils apparaissent. Et puis le prix s'affiche dans mon panier alors que à l'année il me met 0.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Problème avec le panier de mon site commercial
    Par Paranoid dans le forum Langage
    Réponses: 3
    Dernier message: 20/05/2009, 15h45
  2. [Mail] Problème avec mon script d'envoi de mail
    Par leroivert dans le forum Langage
    Réponses: 18
    Dernier message: 02/12/2005, 01h26
  3. Problème avec mon service mysql et PhpMyAdmin
    Par Fixazo dans le forum Outils
    Réponses: 1
    Dernier message: 28/08/2005, 19h02
  4. problème avec mon lecteur CD
    Par leo13 dans le forum Périphériques
    Réponses: 3
    Dernier message: 16/08/2005, 12h21
  5. Problème avec mon firewall ...
    Par Wis dans le forum Tomcat et TomEE
    Réponses: 15
    Dernier message: 06/04/2004, 09h46

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