Php access pdf

Signaler
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009
-
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009
-
Bonjour, je veux, via une liste déroulante, donner la possibilité à l'utilisateur de récupérer les données qui l'interesse dans ma base de données, puis de les sortir sur un doc pdf.
J'ai l'erreur suivante dès le lancement de ma page :

Warning: odbc_fetch_array(): supplied argument is not a valid ODBC result resource in D:\qualite\tri_annu.php on line 115

D'ou peut bien venir cette erreur, la ligne concernée est:

while( $row = odbc_fetch_array( $resultat ) ) //tant que c pas la fin de la table
{

18 réponses

Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
fais voir le code !!
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

<html>


<head>


</head>


<form method="post">

<select name="Site">
<option value="FAA">FAA</option>
<option value="FAO">FAO</option>
<option value="FCE">FCE</option>
</select>


</form>




</html>


<?php


$site = isset($_POST['Site']) ? $_POST['Site'] : false;


$base="D:\\Qualite\Annuaire\Annuaire.mdb";
$Annuaire="Annuaire";


if (!$conn = new COM("ADODB.Connection")) // Declaration Objet
exit("Impossible de se connecter à la base de données
");


$conn->open("DRIVER={Microsoft Access Driver (*.mdb)};DBQ=$base"); // ouverture du fichier


$requete = "SELECT Societe FROM Annuaire WHERE Societe LIKE '%".$site."%'"; // Selectionne une table


$resultat = $conn->execute($requete) OR DIE ('Erreur de requête!'); // execute la requete


//connection au serveur:
//$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;

//PDF


define('FPDF_FONTPATH','font/');
require('fpdf/fpdf.php');
class PDF extends FPDF
{
//En-tête
function Header()
{
//Couleur texte
$this->SetTextColor(220,50,50);
//Police Arial gras 14
$this->SetFont('Arial','B',14);
//Titre
$this->Cell(0,1,'ANNUAIRE TELEPHONIQUE INTERNE',0,0,'C');
//Saut de ligne
$this->Ln(1.5);


//Titres des colonnes
$this->SetFont('Arial','B',12);
$this->SetFillColor(220,130,130);
$this->SetTextColor(255,255,255);


//Titre
$this->Cell(5,1,'Nom - Prénom',1,0,'C',1);
$this->Cell(4,1,'Site',1,0,'C',1);
$this->Cell(4,1,'N° Téléphone fixe',1,0,'C',1);
$this->Cell(3.5,1,'N° Abrégé (Laf.)',1,0,'C',1);
$this->Cell(3,1,'N° Fax',1,0,'C',1);
$this->Cell(3,1,'N° Portable',1,0,'C',1);
$this->Cell(5,1,'Adresse e-mail',1,0,'C',1);
$this->Ln();


}


//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-1.5);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Date du jour
$date = date("d-m-Y");
$this->Cell(0,1,'Date d\'impression : '.$date ,0,0,'L');
//Logo
$this->Image('images/LOGOANNUAIRE.jpg',25,19.5,4,0.5);
//Positionnement à 1,5 cm du bas
$this->SetY(-1.5);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Numéro de page
$this->Cell(0,1,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}
$pdf=new PDF('L','cm','A4');
$pdf->AliasNbPages();
$pdf->SetFont('Arial','B',12);
$pdf->AddPage();
$pdf->SetFillColor(220,130,130);
$pdf->SetTextColor(255,255,255);



//$resultat = odbc_exec( $cnx, 'SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire ORDER BY Nom');


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

while( $row = odbc_fetch_array( $resultat ) ) //tant que c pas la fin de la table
{
$pdf->cell(5,0.7,$row['Nom'],1,0,'C',$fond);
$pdf->cell(4,0.7,$row['Societe'],1,0,'C',$fond);
$pdf->cell(4,0.7,$row['Fixe'],1,0,'C',$fond);
$pdf->cell(3.5,0.7,$row['Fixe_abrege'],1,0,'C',$fond);
$pdf->cell(3,0.7,$row['Fax'],1,0,'C',$fond);
$pdf->cell(3,0.7,$row['Portable'],1,0,'C',$fond);
$pdf->cell(5,0.7,$row['Mail'],1,0,'C',$fond);

$pdf->SetXY(1,$pdf->GetY()+0.7);
$fond=!$fond;
}
$pdf->output();

?>
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
while( $row = odbc_fetch_array( $resultat ) )

il vient d'où $resultat ,de là ?
$resultat = $conn->execute($requete) OR DIE ('Erreur de requête!');

parce que tu ne récupères que 'Société' dans celle là
l'autre requête est en commentaire !!!
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Merde exact...
Sinon, je pourrais pas tout faire en 1 seule requete du style : $resultat = odbc_exec( $cnx, 'SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire WHERE Societe LIKE '%".$site."%'" ORDER BY Nom')...???
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Hello,

pas si tu veux TOUS les noms de sociétés présentes dans ta table, et pas seulement celles où site LIKE machin.
Sinon, si, tu peux, évidemment.
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Bon, j'ai fait la modif suivante, et j'ai toujours la même erreur; oui, je veux faire une recherche des sociéts like "celle choisie via la liste déroulante par l'utilisateur" :

<html>


<head>


</head>


<form method="post">

<select name="Site">
<option value="FAA">FAA</option>
<option value="FAO">FAO</option>
<option value="FCE">FCE</option>
</select>


</form>




</html>


<?php


$site = isset($_POST['Site']) ? $_POST['Site'] : false;


$base="D:\\Qualite\Annuaire\Annuaire.mdb";
$Annuaire="Annuaire";


if (!$conn = new COM("ADODB.Connection")) // Declaration Objet
exit("Impossible de se connecter à la base de données
");


$conn->open("DRIVER={Microsoft Access Driver (*.mdb)};DBQ=$base"); // ouverture du fichier


//$requete = "SELECT Societe FROM Annuaire WHERE Societe LIKE '%".$site."%'"; // Selectionne une table
$requete = "SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire WHERE Societe LIKE '%".$site."%' ORDER BY Nom";
$resultat = $conn->execute($requete) OR DIE ('Erreur de requête!'); // execute la requete


//connection au serveur:
//$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;

//PDF


define('FPDF_FONTPATH','font/');
require('fpdf/fpdf.php');
class PDF extends FPDF
{
//En-tête
function Header()
{
//Couleur texte
$this->SetTextColor(220,50,50);
//Police Arial gras 14
$this->SetFont('Arial','B',14);
//Titre
$this->Cell(0,1,'ANNUAIRE TELEPHONIQUE INTERNE',0,0,'C');
//Saut de ligne
$this->Ln(1.5);


//Titres des colonnes
$this->SetFont('Arial','B',12);
$this->SetFillColor(220,130,130);
$this->SetTextColor(255,255,255);


//Titre
$this->Cell(5,1,'Nom - Prénom',1,0,'C',1);
$this->Cell(4,1,'Site',1,0,'C',1);
$this->Cell(4,1,'N° Téléphone fixe',1,0,'C',1);
$this->Cell(3.5,1,'N° Abrégé (Laf.)',1,0,'C',1);
$this->Cell(3,1,'N° Fax',1,0,'C',1);
$this->Cell(3,1,'N° Portable',1,0,'C',1);
$this->Cell(5,1,'Adresse e-mail',1,0,'C',1);
$this->Ln();


}


//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-1.5);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Date du jour
$date = date("d-m-Y");
$this->Cell(0,1,'Date d\'impression : '.$date ,0,0,'L');
//Logo
$this->Image('images/LOGOANNUAIRE.jpg',25,19.5,4,0.5);
//Positionnement à 1,5 cm du bas
$this->SetY(-1.5);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Numéro de page
$this->Cell(0,1,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}
$pdf=new PDF('L','cm','A4');
$pdf->AliasNbPages();
$pdf->SetFont('Arial','B',12);
$pdf->AddPage();
$pdf->SetFillColor(220,130,130);
$pdf->SetTextColor(255,255,255);



//$resultat = odbc_exec( $cnx, 'SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire ORDER BY Nom');


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

while( $row = odbc_fetch_array( $resultat ) ) //tant que c pas la fin de la table
{
$pdf->cell(5,0.7,$row['Nom'],1,0,'C',$fond);
$pdf->cell(4,0.7,$row['Societe'],1,0,'C',$fond);
$pdf->cell(4,0.7,$row['Fixe'],1,0,'C',$fond);
$pdf->cell(3.5,0.7,$row['Fixe_abrege'],1,0,'C',$fond);
$pdf->cell(3,0.7,$row['Fax'],1,0,'C',$fond);
$pdf->cell(3,0.7,$row['Portable'],1,0,'C',$fond);
$pdf->cell(5,0.7,$row['Mail'],1,0,'C',$fond);

$pdf->SetXY(1,$pdf->GetY()+0.7);
$fond=!$fond;
}
$pdf->output();

?>
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
si tu fais après
$requete=...
echo $requete;
qu'est ce qu'il y a dedans ??
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire WHERE Societe LIKE '%FAA%' ORDER BY Nom
Warning: odbc_fetch_array(): supplied argument is not a valid ODBC result resource in D:\qualite\tri_annu.php on line 116

Mais l'erreur apparait meme si je ne lance pas de tri, elle sort dès l'ouverture de la page
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
si tout est sur la même page
le php s'exécute après le html (tu ne t'arrêtes pas sur le form on dirait)
je ne vois pas de test de soumission

essaie comme ça ?
$requete "SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire WHERE Societe'$site' ORDER BY Nom";

eventuellement place la requête juste avant
while( $row = odbc_fetch_array( $resultat ) )
pour voir
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Non j'ai toujours la meme erreur sur la meme ligne , j'ai maintenant ce code :

<html>


<head>


</head>


<form method="post">

<select name="Site">
<option value="FAA">FAA</option>
<option value="FAO">FAO</option>
<option value="FCE">FCE</option>
</select>


</form>


<?php


$site = isset($_POST['Site']) ? $_POST['Site'] : false;


$base="D:\\Qualite\Annuaire\Annuaire.mdb";
$Annuaire="Annuaire";


if (!$conn = new COM("ADODB.Connection")) // Declaration Objet
exit("Impossible de se connecter à la base de données
");


$conn->open("DRIVER={Microsoft Access Driver (*.mdb)};DBQ=$base"); // ouverture du fichier


//$requete = "SELECT Societe FROM Annuaire WHERE Societe LIKE '%".$site."%'"; // Selectionne une table
//$requete = "SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire WHERE Societe LIKE '%".$site."%' ORDER BY Nom";


//connection au serveur:
//$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;

//PDF


define('FPDF_FONTPATH','font/');
require('fpdf/fpdf.php');
class PDF extends FPDF
{
//En-tête
function Header()
{
//Couleur texte
$this->SetTextColor(220,50,50);
//Police Arial gras 14
$this->SetFont('Arial','B',14);
//Titre
$this->Cell(0,1,'ANNUAIRE TELEPHONIQUE INTERNE',0,0,'C');
//Saut de ligne
$this->Ln(1.5);


//Titres des colonnes
$this->SetFont('Arial','B',12);
$this->SetFillColor(220,130,130);
$this->SetTextColor(255,255,255);


//Titre
$this->Cell(5,1,'Nom - Prénom',1,0,'C',1);
$this->Cell(4,1,'Site',1,0,'C',1);
$this->Cell(4,1,'N° Téléphone fixe',1,0,'C',1);
$this->Cell(3.5,1,'N° Abrégé (Laf.)',1,0,'C',1);
$this->Cell(3,1,'N° Fax',1,0,'C',1);
$this->Cell(3,1,'N° Portable',1,0,'C',1);
$this->Cell(5,1,'Adresse e-mail',1,0,'C',1);
$this->Ln();


}


//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-1.5);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Date du jour
$date = date("d-m-Y");
$this->Cell(0,1,'Date d\'impression : '.$date ,0,0,'L');
//Logo
$this->Image('images/LOGOANNUAIRE.jpg',25,19.5,4,0.5);
//Positionnement à 1,5 cm du bas
$this->SetY(-1.5);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Numéro de page
$this->Cell(0,1,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}
$pdf=new PDF('L','cm','A4');
$pdf->AliasNbPages();
$pdf->SetFont('Arial','B',12);
$pdf->AddPage();
$pdf->SetFillColor(220,130,130);
$pdf->SetTextColor(255,255,255);



//$resultat = odbc_exec( $cnx, 'SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire ORDER BY Nom');


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


$requete "SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire WHERE Societe'$site' ORDER BY Nom";
$resultat = $conn->execute($requete) OR DIE ('Erreur de requête!'); // execute la requete


while( $row = odbc_fetch_array( $resultat ) ) //tant que c pas la fin de la table
{
$pdf->cell(5,0.7,$row['Nom'],1,0,'C',$fond);
$pdf->cell(4,0.7,$row['Societe'],1,0,'C',$fond);
$pdf->cell(4,0.7,$row['Fixe'],1,0,'C',$fond);
$pdf->cell(3.5,0.7,$row['Fixe_abrege'],1,0,'C',$fond);
$pdf->cell(3,0.7,$row['Fax'],1,0,'C',$fond);
$pdf->cell(3,0.7,$row['Portable'],1,0,'C',$fond);
$pdf->cell(5,0.7,$row['Mail'],1,0,'C',$fond);

$pdf->SetXY(1,$pdf->GetY()+0.7);
$fond=!$fond;
}
$pdf->output();

?>




</html>
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
tel que c'est fait tu récupèreras toujours
$site='FAA'
refais un echo derriere la requête

$resultat = $conn->execute($requete) OR DIE ('Erreur de requête!'); // execute la requete

essaie autrement
$resultat=odbc_query($requete);
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Si je fais un echo de $resultat, j'ai Object qui m'est retourné...
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
non
echo $requete;
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Si je ne clique pas sur ok pour valider un choix dans la liste déroulante, j'obtiens :

SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire WHERE Societe ='' ORDER BY Nom

Si je valide avec ok, j'ai entre les "" le nom qui a été validé dans la liste.
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
$resultat = $conn->execute($requete) ;

tu es sûr de ça ??
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Non je pense que c'est foireux j'ai utilisé une autre méthode :
Mais maintenant, j'ai uniquement l'erreur :
Warning: Cannot modify header information - headers already sent by (output started at D:\qualite\tri_annu.php:11) in D:\qualite\fpdf\fpdf.php on line 1022
FPDF error: Some data has already been output to browser, can't send PDF file

et si je selectionn puis valide un site, ca ne donne rien de plus...

Voici le nouveau code :

<html>


<head>


</head>


<form method="post">

<select name="Site">
<option value="FAA">FAA</option>
<option value="FAO">FAO</option>
<option value="FCE">FCE</option>
</select>


</form>


<?php


$site = isset($_POST['Site']) ? $_POST['Site'] : false;


$base="D:\\Qualite\Annuaire\Annuaire.mdb";
$Annuaire="Annuaire";


//connection au serveur:
$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;

//PDF


define('FPDF_FONTPATH','font/');
require('fpdf/fpdf.php');
class PDF extends FPDF
{
//En-tête
function Header()
{
//Couleur texte
$this->SetTextColor(220,50,50);
//Police Arial gras 14
$this->SetFont('Arial','B',14);
//Titre
$this->Cell(0,1,'ANNUAIRE TELEPHONIQUE INTERNE',0,0,'C');
//Saut de ligne
$this->Ln(1.5);


//Titres des colonnes
$this->SetFont('Arial','B',12);
$this->SetFillColor(220,130,130);
$this->SetTextColor(255,255,255);


//Titre
$this->Cell(5,1,'Nom - Prénom',1,0,'C',1);
$this->Cell(4,1,'Site',1,0,'C',1);
$this->Cell(4,1,'N° Téléphone fixe',1,0,'C',1);
$this->Cell(3.5,1,'N° Abrégé (Laf.)',1,0,'C',1);
$this->Cell(3,1,'N° Fax',1,0,'C',1);
$this->Cell(3,1,'N° Portable',1,0,'C',1);
$this->Cell(5,1,'Adresse e-mail',1,0,'C',1);
$this->Ln();


}


//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-1.5);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Date du jour
$date = date("d-m-Y");
$this->Cell(0,1,'Date d\'impression : '.$date ,0,0,'L');
//Logo
$this->Image('images/LOGOANNUAIRE.jpg',25,19.5,4,0.5);
//Positionnement à 1,5 cm du bas
$this->SetY(-1.5);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Numéro de page
$this->Cell(0,1,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}
$pdf=new PDF('L','cm','A4');
$pdf->AliasNbPages();
$pdf->SetFont('Arial','B',12);
$pdf->AddPage();
$pdf->SetFillColor(220,130,130);
$pdf->SetTextColor(255,255,255);



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


$resultat odbc_exec( $cnx, "SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire WHERE Societe'$site' ORDER BY Nom");


while( $row = odbc_fetch_array( $resultat ) ) //tant que c pas la fin de la table
{
$pdf->cell(5,0.7,$row['Nom'],1,0,'C',$fond);
$pdf->cell(4,0.7,$row['Societe'],1,0,'C',$fond);
$pdf->cell(4,0.7,$row['Fixe'],1,0,'C',$fond);
$pdf->cell(3.5,0.7,$row['Fixe_abrege'],1,0,'C',$fond);
$pdf->cell(3,0.7,$row['Fax'],1,0,'C',$fond);
$pdf->cell(3,0.7,$row['Portable'],1,0,'C',$fond);
$pdf->cell(5,0.7,$row['Mail'],1,0,'C',$fond);

$pdf->SetXY(1,$pdf->GetY()+0.7);
$fond=!$fond;
}
$pdf->output();

?>




</html>
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
$pdf->output(); --> normal tu affiches du html avant

<?
if(!isset($_POST['Site']))
{
?>
<html><head></head>

<form method="post" action="<? echo $PHP_SELF?>">

<select name="Site">
<option value="FAA">FAA</option>
<option value="FAO">FAO</option>
<option value="FCE">FCE</option>
</select>


</form>
</html>
<?php
}
else
{
$site = isset($_POST['Site']) ? $_POST['Site'] : false;
...

}
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Ah merci infiniment, ca fonctionne!!!
Voici le code qui est ok:

<?php


if(!isset($_POST['Site']))
{


?>


<html>


<head>


</head>


<form method="post">

<select name="Site">
<option value="FAA">FAA</option>
<option value="FAO">FAO</option>
<option value="FCE">FCE</option>
</select>


</form>




</html>


<?php


}
else
{
$site = isset($_POST['Site']) ? $_POST['Site'] : false;


$base="D:\\Qualite\Annuaire\Annuaire.mdb";
$Annuaire="Annuaire";


//connection au serveur:
$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;

//PDF


define('FPDF_FONTPATH','font/');
require('fpdf/fpdf.php');
class PDF extends FPDF
{
//En-tête
function Header()
{
//Couleur texte
$this->SetTextColor(220,50,50);
//Police Arial gras 14
$this->SetFont('Arial','B',14);
//Titre
$this->Cell(0,1,'ANNUAIRE TELEPHONIQUE INTERNE',0,0,'C');
//Saut de ligne
$this->Ln(1.5);


//Titres des colonnes
$this->SetFont('Arial','B',12);
$this->SetFillColor(220,130,130);
$this->SetTextColor(255,255,255);


//Titre
$this->Cell(5,1,'Nom - Prénom',1,0,'C',1);
$this->Cell(4,1,'Site',1,0,'C',1);
$this->Cell(4,1,'N° Téléphone fixe',1,0,'C',1);
$this->Cell(3.5,1,'N° Abrégé (Laf.)',1,0,'C',1);
$this->Cell(3,1,'N° Fax',1,0,'C',1);
$this->Cell(3,1,'N° Portable',1,0,'C',1);
$this->Cell(5,1,'Adresse e-mail',1,0,'C',1);
$this->Ln();


}


//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-1.5);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Date du jour
$date = date("d-m-Y");
$this->Cell(0,1,'Date d\'impression : '.$date ,0,0,'L');
//Logo
$this->Image('images/LOGOANNUAIRE.jpg',25,19.5,4,0.5);
//Positionnement à 1,5 cm du bas
$this->SetY(-1.5);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Numéro de page
$this->Cell(0,1,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}
$pdf=new PDF('L','cm','A4');
$pdf->AliasNbPages();
$pdf->SetFont('Arial','B',12);
$pdf->AddPage();
$pdf->SetFillColor(220,130,130);
$pdf->SetTextColor(255,255,255);



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


$resultat odbc_exec( $cnx, "SELECT Nom, Societe, Fixe, Fixe_abrege, Fax, Portable, Mail FROM Annuaire WHERE Societe'$site' ORDER BY Nom");


while( $row = odbc_fetch_array( $resultat ) ) //tant que c pas la fin de la table
{
$pdf->cell(5,0.7,$row['Nom'],1,0,'C',$fond);
$pdf->cell(4,0.7,$row['Societe'],1,0,'C',$fond);
$pdf->cell(4,0.7,$row['Fixe'],1,0,'C',$fond);
$pdf->cell(3.5,0.7,$row['Fixe_abrege'],1,0,'C',$fond);
$pdf->cell(3,0.7,$row['Fax'],1,0,'C',$fond);
$pdf->cell(3,0.7,$row['Portable'],1,0,'C',$fond);
$pdf->cell(5,0.7,$row['Mail'],1,0,'C',$fond);

$pdf->SetXY(1,$pdf->GetY()+0.7);
$fond=!$fond;
}
$pdf->output();
}
?>