begin process at 2012 05 28 01:20:04
  Trouver un code source :
 
dans
 

54 commentaire(s) de younes371 sur des sources sur phpcs

Déposé sur Vos données sous format pdf

Bonjour naimanina,

tu peux appliquer ce code sur n'importe quel nombre des champs, c'est à toi de creer la requette SELECT et tu peux avoir le resultat de toutes les tables que tu as. Puis tu dois declarer au niveau de FPDF le nombre des champs a affichés :
Exemple :
function ExportHeader()
{
//Titres des colonnes
$header=array('Champ 1 ','Champ 2','Champ 3',''Champ 4','Champ 5','Champ 6',''Champ 7','Champ 8');
$w=array(15,20,12,20,14,19,10,87);
    for($i=0;$i<count($header);$i++)
        $this->Cell($w[$i],10,$header[$i],1,0,'L',1);

    $this->Ln();
}
/Requette SELECT : $result
$data = array();
while($row = mysql_fetch_array($result))
{
        array($row);
$data[]=$row;

}
A votre disposition
Posté le : 20/06/2011 13:28:11

Déposé sur Vos données sous format pdf

Bonjour,

J'ai pu trouvé la solution. Ainsi,je vous transmet un code qui peut faire :

Affiche du logo en entête, plus un titre en entête, plus des informations dynamique en entête et l'entête du tableau qui va contenir le resultat,

Puis (en corps de la page) le resultat à partir de la bse de données (dynamique).

Au pied de page on affiche un tableau pour lasignateure des differents acteurs et aussi le numero de page courant :
<?php
session_start();
// On se connecte à la base
include("cnx.php");
require('fpdf16/fpdf.php');

ob_end_clean();

class PDF extends FPDF
{

//En-tête
function Header()
{
//Logo
$this->Image('images/logo.gif',10,8,33);
//Saut de ligne
$this->Ln(1);
//Police Arial gras 15
$this->SetFont('Arial','B',15);
//Décalage à droite
$this->Cell(1);
//Titre
$this->Cell(197,10,'Fiche',1,0,'C');
//Saut de ligne
$this->Ln(5);
$this->SetFont('','B',10);
$this->ExportHeader();
}

//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-15);
//Numéro de page
$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'R');
}


function MultiCell($w, $h, $txt, $border=0, $align='J', $fill=false, $indent=0)
{
//Output text with automatic or explicit line breaks
$cw=&$this->CurrentFont['cw'];
if($w==0)
$w=$this->w-$this->rMargin-$this->x;

$wFirst = $w-$indent;
$wOther = $w;

$wmaxFirst=($wFirst-2*$this->cMargin)*1000/$this->FontSize;
$wmaxOther=($wOther-2*$this->cMargin)*1000/$this->FontSize;

$s=str_replace("\r",'',$txt);
$nb=strlen($s);
if($nb>0 && $s[$nb-1]=="\n")
$nb--;
$b=0;
if($border)
{
if($border==1)
{
$border='LTRB';
$b='LRT';
$b2='LR';
}
else
{
$b2='';
if(is_int(strpos($border,'L')))
$b2.='L';
if(is_int(strpos($border,'R')))
$b2.='R';
$b=is_int(strpos($border,'T')) ? $b2.'T' : $b2;
}
}
$sep=-1;
$i=0;
$j=0;
$l=0;
$ns=0;
$nl=1;
$first=true;
while($i<$nb)
{
//Get next character
$c=$s[$i];
if($c=="\n")
{
//Explicit line break
if($this->ws>0)
{
$this->ws=0;
$this->_out('0 Tw');
}
$this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill);
$i++;
$sep=-1;
$j=$i;
$l=0;
$ns=0;
$nl++;
if($border && $nl==2)
$b=$b2;
continue;
}
if($c==' ')
{
$sep=$i;
$ls=$l;
$ns++;
}
$l+=$cw[$c];

if ($first)
{
$wmax = $wmaxFirst;
$w = $wFirst;
}
else
{
$wmax = $wmaxOther;
$w = $wOther;
}

if($l>$wmax)
{
//Automatic line break
if($sep==-1)
{
if($i==$j)
$i++;
if($this->ws>0)
{
$this->ws=0;
$this->_out('0 Tw');
}
$SaveX = $this->x;
if ($first && $indent>0)
{
$this->SetX($this->x + $indent);
$first=false;
}
$this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill);
$this->SetX($SaveX);
}
else
{
if($align=='J')
{
$this->ws=($ns>1) ? ($wmax-$ls)/1000*$this->FontSize/($ns-1) : 0;
$this->_out(sprintf('%.3f Tw',$this->ws*$this->k));
}
$SaveX = $this->x;
if ($first && $indent>0)
{
$this->SetX($this->x + $indent);
$first=false;
}
$this->Cell($w,$h,substr($s,$j,$sep-$j),$b,2,$align,$fill);
$this->SetX($SaveX);
$i=$sep+1;
}
$sep=-1;
$j=$i;
$l=0;
$ns=0;
$nl++;
if($border && $nl==2)
$b=$b2;
}
else
$i++;
}
//Last chunk
if($this->ws>0)
{
$this->ws=0;
$this->_out('0 Tw');
}
if($border && is_int(strpos($border,'B')))
$b.='B';
$this->Cell($w,$h,substr($s,$j,$i),$b,2,$align,$fill);
$this->x=$this->lMargin;
}//End function Multicell
//Tableau coloré
function ExportTableau($data)
{



//Restauration des couleurs et de la police
$this->SetFillColor(224,230,255); //couleur du fond des cases
$this->SetTextColor(0); //couleur du texte des cases
$this->SetFont('');

$w=array(15,20,20,20,20,15,87);
//Données
$fill=false;
foreach($data as $row)
{

$this->Cell($w[0],6,$row[0],'LR',0,'L',$fill);
$this->Cell($w[1],6,$row[1],'LR',0,'L',$fill);
$this->Cell($w[2],6,$row[2],'LR',0,'C',$fill);
$this->Cell($w[3],6,$row[3],'LR',0,'C',$fill);
$this->Cell($w[4],6,$row[4],'LR',0,'C',$fill);
$this->Cell($w[5],6,$row[5],'LR',0,'C',$fill);
$this->Cell($w[6],6,$row[6],'LR',0,'L',$fill);

//$this->Cell($w[7],6,$row[7],'LR',0,'L',$fill);

$this->Ln(6);

$fill=!$fill;
}//foreach

$this->Cell(array_sum($w),0,'','T');
}


//Tableau coloré

function ExportHeader()
{

$chef_departement=$_SESSION['chef_departement'];

//Couleurs, épaisseur du trait et police grasse

$this->SetFillColor(255,255,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes

$this->SetFont('','B');

$this->SetXY(5,40);
//En-tête du tableau


$this->Cell(75,6,'Info 1 :');
$this->Cell(200,6,' : info 1');
$this->Ln();
$this->Cell(75,6,'Info 2 :');
$this->Cell(200,6,' : info 2');
$this->Ln();
$this->Cell(75,6,'chefs departement :');
$this->Cell(200,6,' : '.$chef_departement);
$this->Ln();
$this->Cell(75,6,'Info 4 :');
$this->Ln();
$this->SetFont('Arial','',8);
//Plusieurs lignes
$this->MultiCell(0,5,'Info 4 peut être sur plusieurs lignes',1,'J',0,0);

$this->Ln(15);
$this->SetFont('Arial','B',12);
$this->Cell(75,6,'Liste des Clients');
$this->SetFont('Arial','B',8);
$this->Ln(6);

//En-tête du tableau
$this->SetFillColor(150,180,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetDrawColor(0); // couleur des bordures
$this->SetLineWidth(.3); //epaisseur des traits
$this->SetFont('','B');

//Titres des colonnes
$header=array('Nom','Prenom','Ville','Adresse');
$w=array(15,20,20,20,20,15,87);

for($i=0;$i<count($header);$i++)
$this->Cell($w[$i],10,$header[$i],1,0,'L',1);

$this->Ln();
}

function ExportSignateur()
{

//Titres des colonnes
$signateur=array('Chef departement','Directeur','Secrétaire','PDG');


$this->SetFillColor(255,255,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetDrawColor(0); // couleur des bordures
$this->SetLineWidth(.3); //epaisseur des traits
$this->SetFont('','B');

$w=array(49,49,49,49);

$this->SetFillColor(255,255,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetDrawColor(0); // couleur des bordures
$this->SetLineWidth(.3); //epaisseur des traits
$this->SetFont('','B');

for($i=0;$i<count($signateur);$i++)
$this->Cell($w[$i],10,$signateur[$i],1,0,'C',1);
$this->Ln(10);
for($i=0;$i<count($signateur);$i++)
$this->Cell($w[$i],20,' ',1,0,'C',1);


$this->Ln(5);
}


}


//Identifiant du projet
$id=$_GET['id'];


//Requete SQL : Informatiosn sur les objets
$query = 'SELECT nom,prenom,code_ville,adresse FROM clients WHERE code_departement="'.$id.'" ';
$result = mysql_query($query) or die ('Erreur SQL !<br />' . $query . '<br />' . mysql_error());

//Boucle sur les resultats
$data = array();
while($row = mysql_fetch_array($result))
{
array($row);


//La selection de l'adresse du client
$code_ville=$row['2'];
$req_ville=mysql_query("SELECT intitule_adresse FROM adresse where code_adresse='".$code_ville."'") or die (mysql_error());
if(mysql_num_rows($req_ville)>0) $row['2']=mysql_result($req_ville,0,"intitule_adresse");

//L'adresse du client
//Affichage des 110 premiers caracteres de l'adresse si la longueur depasse 110 caracteres
if(strlen($row['3'])>110)
$row['3']=stripslashes(substr($row['6'],0,110).'..>');

$data[]=$row;

}

//Requette SQL Information sur les chefs
//Chef departement
$chef_departement= '';
$req_pa=mysql_query("SELECT nom,prenom FROM acteur WHERE code_departement='".$id."' ")or die(mysql_error());
if(mysql_num_rows($req_pa)>0)
{
$nb=0;
//Possiblité d'avoir plusieurs chefs
while ($array = mysql_fetch_array($req_pa))
{
$nom_=$array["nom"];
$prenom_=$array["prenom"];
$chef_departement .= $nom_." ".$prenom_." / ";
}
}
else
{
$resultat_cp .="**** Aucun Chef n'est encore affecté à ce departement ****";
}


$_SESSION['chef_departement']=$chef_departement;


//Creation pdf
$pdf=new PDF('P');

//Tableau
$pdf->SetFont('Arial','',8);
$pdf->SetMargins(5,20);
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->ExportTableau($data);
$pdf->ln(20);
$pdf->SetY(-60);
$pdf->SetFont('Arial','B',12);
$pdf->Cell(75,6,'Signature');
$pdf->ln(6);
$pdf->SetFont('Arial','B',8);
$pdf->ExportSignateur();
$pdf->Output('Fiche_'.$id.'_'.date("Y_m_d").'.pdf','I');

?>
Posté le : 28/10/2009 14:10:25

Déposé sur Vos données sous format pdf

Bonjour,

je vous remercie pour votre code :

LE code ça marche pour moi très bien, mais j'au un seul souci, je veux ajouter En-tête, pied de page (Header et Footer) mais le resultat n'est pas ce que je souhaite; j'ai fais comme celà :

<?php
require('fpdf16/fpdf.php');
// On se connecte à la base
include("cnx/cnx.php");
$id=$_GET['id'];
class PDF extends FPDF
{
//En-tête
function Header()
{
//Logo
    $this->Image('images/gipsi_3.gif',10,8,33);
//$this->Cell(40,10,'Hello World !');
//Police Arial gras 15
$this->SetFont('Arial','B',15);
//Décalage à droite
$this->Cell(80);
//Titre
$this->Cell(80,10,'Fiche de mise en exploitation',1,0,'C');
//Saut de ligne
$this->Ln(20);
}

//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-15);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Numéro de page
$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}

//Fichier pdf en format A4
$pdf=new PDF('P','cm','A4');



//Instanciation de la classe dérivée
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Arial','B',8);
$pdf->SetFillColor(96,96,96);
$pdf->SetTextColor(255,255,255);


//La selection des objets du projets demande
$req_list_obj='SELECT nom FROM personne WHERE ville="'.$id.'" ) order by nom_objet ';
$resultat=mysql_query($req_list_obj)or die (mysql_error());

$pdf->SetXY(1,1);

//En-tête du tableau
    $w=array(2,2,2,2,2,2,7);

//Titres des colonnes
$header=array('Nom');
/*for($i=0;$i<sizeof($header);$i++)
    $pdf->cell(2,1,$header[$i],1,0,'C',1);*/

$pdf->cell( $w[0],1,$header[0],1,0,'C',1);



$pdf->SetFillColor(0xdd,0xdd,0xdd);
$pdf->SetTextColor(0,0,0);
$pdf->SetFont('Arial','',8);
$pdf->SetXY(1,$pdf->GetY()+1);
$fond=0;

while($row=mysql_fetch_array($resultat))
  {
  

//Remplissage des cellule du tableau
$pdf->cell($w[0],1,$row['nom'],1,0,'C',$fond);

$pdf->SetXY(1,$pdf->GetY()+1);
$fond=!$fond;
  }
$pdf->output('Fiche'.$id.'_'.date("Y_m_d").'.pdf','I');



?>



Merci pour votre aide

Posté le : 22/10/2009 18:05:36

Déposé sur Listes déroulantes dynamiques liées xajax

Bonjour,

je t'envoi un lien pour avoir plus de détail sur XAJAX :
http://www.siteduzero.com/tutoriel-3-36169-xajax-applications-ajax-faciles-avec-php-et-xajax.html

Bon courage
Posté le : 14/07/2009 16:00:59

Déposé sur Exporter les tables bdd mysql au format csv pour télécharger ...

bonjour,
Merci pour ta source
j'ai un fichier excel .xls et je veux l'exporter vers Mysql, est ce que vous pouvez m'aider?
Merci.
Posté le : 18/10/2007 18:39:43

Déposé sur Listes déroulantes dynamiques liées xajax

Sokrates,
aller voir ça : http://wiki.xajaxproject.org/Tutorials:Character_Encoding_and_xajax
ça pourra t'aider.
et pour avoir une bonne réponse voici oû tu pourras avoir des réponses :
http://community.xajaxproject.org/index.php

en fait je veux pas te donner la réponse, mais il faut que tu comprend et tu cherche pour comprendre !.
je suis là si tu comprenderas rien !
Posté le : 31/03/2007 06:10:37

Déposé sur Formulaire en php flash envoyer par mail

vous tester ça en ligne ou en local ?
Posté le : 21/03/2007 14:10:33

Déposé sur Listes déroulantes dynamiques liées xajax

Feleciatation, t as pu avoir le .zip, suite à une modification
Posté le : 21/03/2007 14:07:24

Déposé sur Envoie email-newslettre automatiquement

salut Pedrosa,
tu fs un scritp normale avec asp(c facile a faire, tu as le syntaxe en haut avec php ...).
et dans http://www.webcron.org/  tu donne l url de ta page .asp et tu choisis 6 mois.

voilà un exemle :
http://asp-php.net/scripts/asp-php/mailing-list.php?page=2
Posté le : 28/02/2007 13:33:45

Déposé sur Envoie email-newslettre automatiquement

salut Pedrosa,
tu fs un scritp normale avec asp(c facile a faire, tu as le syntaxe en haut avec php ...).
et dans http://www.webcron.org/  tu donne l url de ta page .asp et tu choisis 6 mois.
Posté le : 28/02/2007 13:31:06

1 2 3 4 5 6


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

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 : 0,218 sec (4)

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