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

Bibliothèques et frameworks PHP Discussion :

[FPDF] problème de mise en page pdf sur choix checkbox


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 87
    Points : 39
    Points
    39
    Par défaut [FPDF] problème de mise en page pdf sur choix checkbox
    Salut tous le monde, voila mon bleme, sur mon formulaire j'ai quelques checkbox de choix d'article, quand la personne coche admetton le premier et le dernier checkbox je stock ces données dans ma base mysql après je les récupere pour les inserer dans une colonne article dans mon document pdf generer par fpdf, le souci vient de suite, j'arrive sans problème à les récuperer mais par contre j'ai un trou entre le premier article choisi et le dernier car en effet la place qui reste est réservé pour les autres choix s'ils étaient séléctionné, alors ce que je voudrais faire c'est de pouvoir supprimer ce trou suivant ce que la personne choisi c'est au niveau esthétique sur la facture, mais je n'arrive pas à faire cela: voici mes code

    formulaire:
    Code HTML : 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
    <input type="checkbox" name="interets_tracteur" value="Tracteur" />Tracteur<select name="quantite">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    </select>
     
    <input type="checkbox" name="interets_camion" value="Camion" />Camion<select name="quantite2">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    </select>
     
    <input type="checkbox" name="interets_voiture" value="Voiture" />Voiture<select name="">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    </select>

    je recupere les données:
    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
    // Test si les VARIABLES existent
    IF (isset($_POST['interets_tracteur']) && $_POST['interets_tracteur'] == "Tracteur") {
       $tracteur = $_POST['interets_tracteur'];
    } else {
       $tracteur = "";
    }
    IF (isset($_POST['interets_voiture']) && $_POST['interets_voiture'] == "Voiture") {
       $voiture = $_POST['interets_voiture'];
    } else {
       $voiture = "";
    }
    IF (isset($_POST['interets_camion']) && $_POST['interets_camion'] == "Camion") {
       $camion = $_POST['interets_camion'];
    } else {
       $camion = "";
    }
     
    $query = "INSERT INTO contact (interets_tracteur,interets_camion,interets_voiture) VALUES('','".$tracteur."','".$camion."','".$voiture."')";
    code pdf:
    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
    define('FPDF_FONTPATH','font/');
    include("connection.inc.php");
    require('invoice.php');
     
    //Select the Products you want to show in your PDF file 
    $result=mysql_query("select interets_tracteur,interets_camion,interets_voiture from contact WHERE idcontact='".$_SESSION['idcontact']."' ORDER BY nom"); 
    $number_of_contact = mysql_numrows($result); 
     
     
     
     
    //For each row, add the field to the corresponding column 
    while($row = mysql_fetch_array($result)) 
    { 
        $interets_tracteur 
    = $row["interets_tracteur"];
        $interets_camion 
    = $row["interets_camion"];
        $interets_voiture 
    = $row["interets_voiture"];
    } 
    mysql_close();

  2. #2
    Membre éclairé
    Avatar de jc_cornic
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    623
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 623
    Points : 823
    Points
    823
    Par défaut
    Salut, pourrais-tu préciser le code qui génère le doc PDF ? car il me semble qu'il manquait des trucs à ton dernier POST...

    ++
    JC

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 87
    Points : 39
    Points
    39
    Par défaut
    voila mon code pdf
    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    <?php
    ob_start(); 
    session_start();
    // Exemple de génération de devis/facture PDF
     
    define('FPDF_FONTPATH','font/');
    include("connection.inc.php");
    require('invoice.php');
     
    //Select the Products you want to show in your PDF file 
    $result=mysql_query("select adress_client,code_postal,civilite,ville,pays,nom,quantite,quantite2,date,interets_tracteur,interets_camion,interets_voiture from contact WHERE idcontact='".$_SESSION['idcontact']."' ORDER BY nom"); 
    $number_of_contact = mysql_numrows($result); 
     
     
     
     
    //For each row, add the field to the corresponding column 
    while($row = mysql_fetch_array($result)) 
    { 
        $adress_client = $row["adress_client"];
        $code_postal 
    = $row["code_postal"];
        $civilite 
    = $row["civilite"];
        $ville = $row["ville"];
        $pays 
    = $row["pays"];
        $nom = $row["nom"];
        $quantite = $row["quantite"];
        $quantite2 = $row["quantite2"];
        $date 
    = $row["date"];
        $interets_tracteur 
    = $row["interets_tracteur"];
        $interets_camion 
    = $row["interets_camion"];
        $interets_voiture 
    = $row["interets_voiture"];
    } 
    mysql_close(); 
     
     
    $pdf = new INVOICE( 'P', 'mm', 'A4' );
    $pdf->Open();
    $pdf->AddPage();
    $pdf->addSociete( "MaSociete",
                      "$tel\n" .
                      "75000 PARIS\n".
                      "$tel\n" .
                      "Capital : 18000 " . EURO );
    $pdf->fact_dev( "Devis ", "TEMPO" );
    $pdf->temporaire("");
    $pdf->addDate($date);
    $pdf->addClientAdresse($nom."\n".$adress_client."\n".$code_postal."\n".$ville."\n".$pays);
    $pdf->addClient();
    $pdf->addPageNumber("1");
     
     
    $pdf->addReglement("Chèque à réception de facture");
    $pdf->addEcheance($date);
    $pdf->addNumTVA("FR888777666");
    $pdf->addReference("Devis ... du ....");
    $cols=array( "REFERENCE"    => 23,
                 "DESIGNATION"  => 78,
                 "QUANTITE"     => 22,
                 "P.U. HT"      => 26,
                 "MONTANT H.T." => 30,
                 "TVA"          => 11 );
    $pdf->addCols( $cols);
    $cols=array( "REFERENCE"    => "L",
                 "DESIGNATION"  => "L",
                 "QUANTITE"     => "C",
                 "P.U. HT"      => "R",
                 "MONTANT H.T." => "R",
                 "TVA"          => "C" );
    $pdf->addLineFormat( $cols);
    $pdf->addLineFormat($cols);
     
    $y    = 109;
    $line = array( "REFERENCE"    => "REF1",
                   "DESIGNATION"  => "$interets_tracteur\n",
     
     
                   "QUANTITE"     => "$quantite\n",
                   "P.U. HT"      => "600.00",
                   "MONTANT H.T." => "700.00",
                   "TVA"          => "1" );
    $size = $pdf->addLine( $y, $line );
    $y   += $size + 2;
     
    $line = array( "REFERENCE"    => "REF2",
                   "DESIGNATION"  => "$interets_voiture\n",
                   "QUANTITE"     => "$interets\n",
                   "P.U. HT"      => "10.00",
                   "MONTANT H.T." => "60.00",
                   "TVA"          => "1" );

  4. #4
    Membre éclairé
    Avatar de jc_cornic
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    623
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 623
    Points : 823
    Points
    823
    Par défaut
    As tu essayé de eser si la variable es une chaine vide avant de l'ajouer en addLine avec le pdf ?

    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
     
    if ($row["interets_tracteur"] == "")
    {
    }
    else
    {
    //l'ajouter au pdf
    }
     
    if ($row["interets_camion"] == "")
    {
    }
    else
    {
    //l'ajouter au pdf
    }
     
    ...

    ++
    JC

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 87
    Points : 39
    Points
    39
    Par défaut
    salut alors j'ai réussi à faire ce que je voulais mais j'ai toujours un pti truc qui cloche, c'est à dire que je suis obligé de cocher une case pour generer mon pdf, mais je ne voudrais pas enfin bon voila, bon je vais chercher, et merci pour l'aide salut.

  6. #6
    Membre éclairé
    Avatar de jc_cornic
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    623
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 623
    Points : 823
    Points
    823
    Par défaut
    Tu peux aussi faire un bouton (type submit pour déclencher la génération de ton documen PDF... Sinon, tu voulais faire comment ?

    ++
    JC

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 87
    Points : 39
    Points
    39
    Par défaut
    en fait je me suis mal exprimer, voila en gros c'est un formulaire basic où tu remplie des truc et tu dois cocher les articles que tu souhaite ou cocher centre d'interets mais si la personne ne choche pas de centre d'interet ce qui est possible, mais quand elle va cliquer sur generer pdf il y a aura un message d'erreur mais que je ne veut pas c'est comme si que la personne soit obligé de cocher un centre d'interet mais je veux pas je te donne mon code pour que tu puisse voir:
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <p id="interets"><label>Centres d'intérêts : </label>
        <input type="checkbox" name="interets[]" value="sport" />Sport
        <input type="checkbox" name="interets[]" value="cinema" />Cinéma<br />
        <input type="checkbox" name="interets[]" value="internet" />Internet
        <input type="checkbox" name="interets[]" value="voyages" />Voyages
      </p>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $interets = $_POST['interets'];
      $sqlinterets = '';
      for ($i=0; $i<count($interets); $i++)
      {
        $sqlinterets .= $interets[$i];
        $sqlinterets .=  '
    ';

Discussions similaires

  1. [2008] Problème de mise en page rapport lors export en PDF
    Par cana13 dans le forum SSRS
    Réponses: 8
    Dernier message: 20/07/2011, 17h33
  2. Problème pour mise en page d'un pdf
    Par lilou09200 dans le forum Autres Logiciels
    Réponses: 0
    Dernier message: 13/12/2010, 23h16
  3. Réponses: 2
    Dernier message: 03/03/2009, 12h35
  4. Problème de mise en page sur IE5
    Par Oberown dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 12/08/2007, 17h28

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