begin process at 2012 05 31 07:34:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Débutants

 > 

problème de $_POST


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème de $_POST

lundi 28 mars 2005 à 13:10:19 | problème de $_POST

gourby

voila, j'ai une ligne de code:

$caddie->addArticle(&$article, $_POST['fQuantite'], $_POST['fport']);

elle est censée rajouter dans mon caddie une ligne avec le nom de l'article, la quantité commandée et les frais de port.
Cependant, elle ne rajoute rien.
Par contre, si j'utilise la même ligne sans $_POST['fport']) l'article et la quantité sont bien ajoutés au caddie.

Il doit y avoir un problème de syntaxe mais où???

Merci d'avance pour votre aide.

GOURBY
lundi 28 mars 2005 à 15:40:18 | Re : problème de $_POST

coucou747

Administrateur CodeS-SourceS
ce n'est pas un problème de synthaxe...

déja, je ne vois pas pourquoi tu passes article par référence...

ensuite, tu ne donne qu'une ligne de code alros que le bug doit être dans la class...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

[ Lien ]
lundi 28 mars 2005 à 16:17:32 | Re : problème de $_POST

Anthomicro

Salut,

passage par référence => gain de rapidité (encore que là...)

Ensuite j'appuie coucou, ton problème vient surement de ta fonction...


    lundi 28 mars 2005 à 20:29:40 | Re : problème de $_POST

    gourby

    Bin voila la class

    <?
    class gestionCaddie {
    // Eléments de notre panier
        var $items;
     //var $nbrArticle;
     /**
      @constructor fait rien de special done la structure de donnees
     */
     function gestionCaddie()
     {
      $this->items = array () ;
      //$this->nbrArticle = 0 ;
     }
     
     /**
      @param array d'article ajoute une liste d'article au panier 
      la clef est l'id de l'article et la valeur associer la quantite 
     */
     function addListeArticle($attributeArray = NULL)
     {
     global $db ;
      if (! is_array($attributeArray) )
       return NULL ;
       
      $param = implode ( ',' ,  array_keys($attributeArray) ) ;
      
      $sql_article = '
       select
       id ,
       id as idArticle,
       idCategorie ,
       designation_fr,
       descriptif_fr,
       designation_es,
       descriptif_es,
       designation_pt,
       descriptif_pt,
       prixHT,
       reference
       from article
       WHERE id in ' . '(' .$param . ')' ;
       //debug ($db->getAssoc($sql_article, TRUE, $param) ) ;
       //debug ($db->getAssoc($sql_article, FALSE , $param)[42] ) ;
       //debug ( $test ) ;
      $articleArray = $db->getAssoc($sql_article, TRUE);
      //debug ($db->last_query, '$db->last_query' ) ; 
      foreach ($articleArray as $key => $value)
      {
       //debug ( new article ($value), 'new article ($value)'  ) ;
       $this->items[$key]['article'] = new article ($value) ;
       $this->items[$key]['quantite'] = 1;
       $this->items[$key]['port'] = 0;
      }
      //debug ( $this ) ;
     }
     
     function addArticle($_article, $_quantite)
     { 
      //debug ($_article );
      $idArticle = $_article->getIdArticle() ;
      //debug ($_article->getIdArticle(), '$_article->getIdArticle()');
      $this->items[$idArticle]['article'] = $_article;
      $this->items[$idArticle]['quantite'] += $_quantite;
      $this->items[$idArticle]['port'] += $_port;
      //$this->nbrArticle++ ;
     }

        }
     function afficheCaddie($tpl, $bloc, $lang = NULL )
     {
      $tpl->setCurrentBlock($bloc);
      foreach($this->items as $key => $value)
      {
    //  debug (&$key) ;
    //  debug ($value) ;
       $article =& $value['article'] ;
       
       //debug (getPrixLigneHT(&$article)) ;
       //return NULL ;
       //debug ($article) ;
       $article->afficheArticle(&$tpl, $lang ) ;
       $tpl->setVariable(array( 'prixLigneHT' => $this->getPrixLigneHT($article) ,
              'quantite' => $this->items[$article->idArticle]['quantite'],)) ;
       $tpl->parse($bloc);
      }
     }
     
     
     function getPrixLigneHT($article)
     {
      return sprintf ("%.2f", ($article->prixHT + $this->items[$article->idArticle]['port'])* $this->items[$article->idArticle]['quantite']);
     }
     
     
     function afficheTotal($tpl,$bloc)
     {
      $totalHT = $this->getTotalHT();
      $totalTTC = $this->getTotalTTC();
      $totalTVA = $this->getTotalTVA($totalHT , $totalTTC);
      
      $tpl->setCurrentBlock($bloc);
      $tpl->setVariable(array( 'totalTVA' => sprintf ("%.2f", $totalTVA ),
      'totalHT' => sprintf ("%.2f",  $totalHT),
      'totalTTC' => sprintf ("%.2f", $totalTTC ), )) ;
      $tpl->parse($bloc);
     }
     

     function delArticle($_article)
     {
      // test si le parametre en object
      // et recherhce son indexe
      if (is_object ($_article) === TRUE )
       $idArticle = $_article->getIdArticle() ;  
      else
       $idArticle  = $_article ;
      // si le parametre n'est pas objet c'est son index
      //debug ($this->items) ;
      if (array_key_exists($idArticle, $this->items)=== TRUE)
       unset ($this->items[$idArticle]) ;
     }
     
     function getArticle($idArticle)
     {
      return $this->items[$idArticle]['article'];
     }
     function getArticleQantite($idArticle)
     {
      return $this->items[$idArticle]['quantite'];
     }
     function getport($idArticle)
     {
      return $this->items[$idArticle]['port'];
     }
     function getNbrArticle()
     {
      return count( $this->items) ;
     }
     
     function getTotalHT()  
     {
      $total = 0 ;
      if (count($this->items) > 0)
      {
       foreach ($this->items as $key => $value)
       {
        //debug ($value['article'], '$value[article]') ;
        //debug ($value['article']->prix, '$value[article]->prix') ;
        //debug ($value['quantite'], '$value[quantite]') ;
        $total += ($value['article']->prixHT + $value['port']) * $value['quantite'];
       }
      }
      return (float) $total ;
     }
     function getTotalTTC00()  
     {
      //return sprintf ("%.2f", $this->getTotalTTC() * 100 ) ;
      $t = sprintf ("%.2f", $this->getTotalTTC() ) ;
      $t = sprintf ("%u", $t * 100 ) ;
      //return (float) sprintf ("%u", $this->getTotalTTC() * 100 );
      return $t ;
     }
     function getTotalTVA($_totalHT , $_totalTTC)
     {
      if (isset($_totalHT) == TRUE && isset($_totalTTC) == TRUE  )
       return (float) $_totalTTC - $_totalHT ;
      else
       return (float) getTotalTTC() - getTotalHT();
     }
     
     function getTotalTTC()
     {
      $total = 0 ;
      if (count($this->items) > 0)
      {
       foreach ($this->items as $key => $value)
       {
        //debug ($value['article'], '$value[article]') ;
        //debug ($value['article']->prix, '$value[article]->prix') ;
        //debug ($value['quantite'], '$value[quantite]') ;
        $total += $value['article']->prixTTC * $value['quantite'];
       }
      }
      return (float) $total ;
     }
     function sauvegarde($client, $commande)
     {
     global $db;
      if ( $client->id == '' )
       return NULL ;
      if ( $commande->id == '' )
       return NULL ;
      //delete des anciens object en cas de mise a jour
      $sqlDelete = 'DELETE from art2cmd where idCommande = ?' ;
      $result = $db->query($sqlDelete, array( $commande->id ) );
      //debug ( $db->last_query , '$db->last_query '  ) ;
      foreach ( $this->items as $value)
      { 
       //debug ($value) ;
       $article =&$value['article'] ;
       $article->sauvegarde(&$commande, $value['quantite'] );
       $article->sauvegarde(&$commande, $value['port'] );
      }
     }

     

    ?>

    GOURBY

    lundi 28 mars 2005 à 20:32:20 | Re : problème de $_POST

    Anthomicro

    je vois addarticle($machin,$machin) et quand tu appelles ta fonction tu fais addarticle($machin,$machin,$machin)

    tu donnes trois arguments alors que la fonction n'en accepte que deux, normal que ça fonctionne pas...


      lundi 28 mars 2005 à 20:34:08 | Re : problème de $_POST

      coucou747

      Administrateur CodeS-SourceS
      t'envoi deux paramètres de trop...

      In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

      [ Lien ]
      lundi 28 mars 2005 à 20:52:22 | Re : problème de $_POST

      Anthomicro

      un ^^


        lundi 28 mars 2005 à 20:55:40 | Re : problème de $_POST

        coucou747

        Administrateur CodeS-SourceS
        oui :/

        In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

        [ Lien ]
        mardi 29 mars 2005 à 07:25:11 | Re : problème de $_POST

        gourby

        Merci beaucoup,

        je n'avais pas vu ça, comme quoi un regard nouveau ça aide.

        GOURBY


        Cette discussion est classée dans : problème, ligne, post, article, caddie


        Répondre à ce message

        Sujets en rapport avec ce message

        Problème de caddie, help! [ par optimed ] Bonjour!Je suis en train de faire un projet de caddie dans le cadre de mes cours pour la fac, le but étant de simuler un magasin de disques online et problème de caddie [ par optimed ] Bonjour!Je suis en train de faire un projet de caddie dans le cadre de mes cours pour la fac, le but étant de simuler un magasin de disques online et problème avec $_POST et Select [ par anspauldou ] Salut J'ai un problème avec mon $_POST et le select de mon formulaire. lorsque que je soumets mon formulaire, $_POST ['select '] ne me renvoie que le Error: Unsupported operand types - Caddy php [ par kida28 ] KidaBoujour à tous,Lorsque je modifie la quantité dans mon caddie j'ai cette erreur: "Fatal error: Unsupported operand types i Problème "POST" "GET" [ par xcalibre ] Bonjour,J'ai un problème probablement très simple pour certain d'entre vous, mais qui me complique bien des choses à moi.Voilà ma question, j'ai un bo problème de concaténation de chaine! [ par bibine125 ] salut à tous ! j'ai problème pour concaténer plusieurs chaine de caractère. en effet j'aimerai que à chaque fois que je clique sur une option de ma li retour à la ligne en php : question hyper simple, quand on connait le php :) [ par zepokpok ] bonjour, j'aimerais insérer des retours à la ligne dans des messages que crée une page php.la voici : $nom = $_POST["nom"];$email = $_POST["email"];$c [CHERCHE] 'reinstancier' ou quelque chose comme ça [ par craso ] bonjour,je commence a comprendre la POO, et j'ai fait une classe panier. La seule que j'ai comprise à fond, pour le moment. Mais maintenant que je veu problème formulaire ! [ par ahcorad ] Comment fait-on pour récupérer l'ensemble des info d'un tableau qui peut etre modifié ???ç ptet pa trè clair ! mon code :$nb=0;  while($ligne=mysql_fe $_post [ par alpha386 ] BonjourJ'ai un problème avec mon transfert à partir d'un formulaire.si j'écris: $name=$_post['nom']; ensuite je fais echo $name, en php4 il transfertm


        Nos sponsors


        Sondage...

        Comparez les prix

        CalendriCode

        Mai 2012
        LMMJVSD
         123456
        78910111213
        14151617181920
        21222324252627
        28293031   

        Consulter la suite du CalendriCode

        Photothèque

        A découvrir



         
        Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
        CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
        CodeS-SourceS.com© est une marque déposée tous droits réservés

        Google Coop CodeS-SourceS Google Coop CodeS-SourceS
        Temps d'éxécution de la page : 4,493 sec (3)

        Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales