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 :

PHP, fpdf et tableau


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 77
    Points : 54
    Points
    54
    Par défaut PHP, fpdf et tableau
    Salut,

    Je suis en train de faire une facture en PDF sur un site de vente en ligne et j'ai un petit soucis que je ne n'arrive pas à résoudre.

    Sur la facture apparaît un tableau avec une ligne par ligne détail de commande, le soucis est avec le prix.

    En effet, dans ma table détail_commande j'ai un champs PrixVente_produit_detail et un champs PrixPromo_produit_detail.

    Je veux que si le champs PrixPromo_produit_detail est égal à 0 alors on affiche PrixVente_produit_detail sinon on affiche PrixPromo_produit_detail.

    Je me suis aidé de script tout prêt sur le site fpdf mais je ne trouve pas comment gérer ce cas là.

    Actuellement mon code est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    // Tableau de la commande avec détail
    $pdf->AddCol('Libelle_produit_detail',105,'Désignation','C');
    $pdf->AddCol('Quantite_produit_detail',15,'Qté','C');
    $pdf->AddCol('PrixVente_produit_detail',40,'Prix Unitaire HT','C');
    $pdf->AddCol('Montant',30,'Montant HT','C');
     
    $prop=array('HeaderColor'=>array(195,195,195),
                'color1'=>array(255,255,255),
                'color2'=>array(231,231,231),
                'padding'=>2);
     
    $pdf->Table('SELECT Libelle_produit_detail, Quantite_produit_detail, PrixVente_produit_detail, Quantite_produit_detail * PrixVente_produit_detail as Montant
    FROM Detail_commande WHERE Num_com_detail='.$num_commande.'',$prop);
    Comme on peut le voir, j'affiche actuellement toujours la zone PrixVente_produit_detail.

    Je ne vois pas comment gérer le "si" à l'intérieur de ma requête....

    Merci de votre aide !

  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
    avec un if :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $pdf->Table('SELECT Libelle_produit_detail, Quantite_produit_detail, 
    if(PrixPromo_produit_detail = 0, PrixVente_produit_detail, PrixPromo_produit_detail) as Prix, Quantite_produit_detail * Prix as Montant
    FROM Detail_commande WHERE Num_com_detail='.$num_commande.'',$prop);

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 77
    Points : 54
    Points
    54
    Par défaut
    Salut, merci pour ta réponse.

    Je viens de tester et j'ai cette erreur :

    Erreur: Unknown column 'Prix' in 'field list'
    Requête: SELECT Libelle_produit_detail, Quantite_produit_detail, if(PrixPromo_produit_detail = 0, PrixVente_produit_detail, PrixPromo_produit_detail) as Prix, Quantite_produit_detail * Prix as Montant FROM Detail_commande WHERE Num_com_detail=201306071
    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
    15
     
    // Tableau de la commande avec détail
    $pdf->AddCol('Libelle_produit_detail',105,'Désignation','C');
    $pdf->AddCol('Quantite_produit_detail',15,'Qté','C');
    $pdf->AddCol('Prix',40,'Prix Unitaire HT','C');
    $pdf->AddCol('Montant',30,'Montant HT','C');
     
    $prop=array('HeaderColor'=>array(195,195,195),
                'color1'=>array(255,255,255),
                'color2'=>array(231,231,231),
                'padding'=>2);
     
    $pdf->Table('SELECT Libelle_produit_detail, Quantite_produit_detail, 
    if(PrixPromo_produit_detail = 0, PrixVente_produit_detail, PrixPromo_produit_detail) as Prix, Quantite_produit_detail * Prix as Montant
    FROM Detail_commande WHERE Num_com_detail='.$num_commande.'',$prop);
    Je pense que le problème vient de la multiplication par "Prix" mais je ne vois pas comment résoudre ça

    As tu une idée ?

    Merci d'avance.

  4. #4
    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
    Je pensais que ça passerait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $pdf->Table('SELECT Libelle_produit_detail, Quantite_produit_detail, 
    IF (PrixPromo_produit_detail = 0, PrixVente_produit_detail, PrixPromo_produit_detail) as Prix, 
    Quantite_produit_detail * IF (PrixPromo_produit_detail = 0, PrixVente_produit_detail, PrixPromo_produit_detail) as Montant
    FROM Detail_commande WHERE Num_com_detail='.$num_commande.'',$prop);

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 77
    Points : 54
    Points
    54
    Par défaut
    Merci beaucoup, ça marche parfaitement !

    Effectivement il fallait remettre l'expression entièrement....

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

Discussions similaires

  1. [PHP-JS] Transferer tableau php a javascript
    Par stephane92400 dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 12/07/2006, 14h05
  2. [Conception] Résultat d'une requête PHP dans un tableau avec lien ?
    Par DjMaC dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 25/04/2006, 20h37
  3. Javascript + PHP => checkbox et tableau incompatibles
    Par Matth_S dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 21/02/2006, 15h38
  4. [PHP] trier un tableau dynamiquement
    Par caro. dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 31/01/2006, 17h08
  5. Réponses: 2
    Dernier message: 20/11/2005, 18h54

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