Problème de génration PDF

Résolu/Fermé
milo1986 Messages postés 126 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 30 août 2011 - 18 sept. 2007 à 13:01
milo1986 Messages postés 126 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 30 août 2011 - 19 sept. 2007 à 09:43
Bonjour,

Voilà, en fait je génére un pdf depuis mon code php, et je dois afficher un tableau qui contient les enregistrement d'une table, je ne comprend pas pourquoi j'obtiens l'erreur suivante : Parse error: parse error, unexpected T_WHILE, expecting ')' in /applisL/apache2/htdocs/Bordereau/bordereau.php on line 75
j'ai beau cherché je ne voi pas....

code php :

<?php
$db = mysql_connect('192.168.119.2', 'root', '');

mysql_select_db('bordereau',$db);
$sql = "SELECT * FROM document" ;

$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

$nom_jour_fr = array("dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi");

$mois_fr = Array("", "janvier", "fevrier", "mars", "avril", "mai", "juin", "juillet", "aout",
"septembre", "octobre", "novembre", "decembre");

list($nom_jour, $jour, $mois, $annee) = explode('/', date("w/d/n/Y"));
$date = $nom_jour_fr[$nom_jour].' '.$jour.' '.$mois_fr[$mois].' '.$annee;
include("phpToPDF.php");

$PDF=new phpToPDF();
$PDF->AddPage();
$PDF->SetFont('Arial','B','C',10);
$PDF->MultiCell(0, 10, "INSPECTION ACADEMIQUE DE LA CORREZE\nBordereau d'envoi\ndu $date ", 0, "C", 0);

// Définition des propriétés du tableau.
$proprietesTableau = array(
'TB_ALIGN' => 'L',
'L_MARGIN' => 15,
'BG_COLOR' => array (255,255,255),
'BRD_COLOR' => array(0,0,0),
'BRD_SIZE' => '0.3',
);

// Définition des propriétés du header du tableau.
$proprieteHeader = array(
'T_COLOR' => array(0,0,0),
'T_SIZE' => 12,
'T_FONT' => 'Arial',
'T_ALIGN' => 'C',
'V_ALIGN' => 'T',
'T_TYPE' => 'B',
'LN_SIZE' => 7,
'BG_COLOR' => array (255,255,255),
'BRD_COLOR' => array(0,0,0),
'BRD_SIZE' => 0.2,
'BRD_TYPE' => '1',
'BRD_TYPE_NEW_PAGE' => '',
);
// Contenu du header du tableau.
$contenuHeader = array(
50, 50, 50,
"Nom de la pièce jointe", "Objet", "Destinataire",
);

// Définition des propriétés du reste du contenu du tableau.
$proprieteContenu = array(
'T_COLOR' => array(0,0,0),
'T_SIZE' => 10,
'T_FONT' => 'Arial',
'T_ALIGN_COL0' => 'L',
'T_ALIGN' => 'R',
'V_ALIGN' => 'M',
'T_TYPE' => '',
'LN_SIZE' => 6,
'BG_COLOR' => array (255,255,255),
'BRD_COLOR' => array(0,0,0),
'BRD_SIZE' => 0.1,
'BRD_TYPE' => '1',
'BRD_TYPE_NEW_PAGE' => '',
);

// Contenu du tableau.

$contenuTableau = array(
while($data = mysql_fetch_array($req)){

"$data['NOMDOC']", "$data['OBJDOC']", "$data['DESDOC']",}

"[U]Emargement :","" ,COLSPAN2 ,
);

// D'abord le PDF, puis les propriétés globales du tableau.
// Ensuite, le header du tableau (propriétés et données) puis le contenu (propriétés et données)
$PDF->drawTableau($PDF, $proprietesTableau, $proprieteHeader, $contenuHeader, $proprieteContenu, $contenuTableau);

$PDF->Output();
?>
A voir également:

2 réponses

Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011 225
19 sept. 2007 à 00:42
Salut Milo,

J'ai un peu de mal avec ta façon de programmer. Pourquoi tu termines souvent la liste d'arguments de fonctions par une virgule ?
Par exemple je lis :
$contenuHeader = array(50, 50, 50,"Nom de la pièce jointe", "Objet", "Destinataire",);

A quoi sert la dernière virgule ?

Si la ligne 75 correspond à ce que tu as affiché ici-même on peut cibler :
	$contenuTableau = array(
             while($data = mysql_fetch_array($req)) {
        	   "$data['NOMDOC']", "$data['OBJDOC']", "$data['DESDOC']",
             }

     // Et ici ?

	"[U]Emargement :","" ,COLSPAN2 ,
  );

En gros je pense qu'à la place de mon commentaire " // Et ici " il manque quelque chose (une virgule ?), ou alors tu as fermé ton acolade à la place de mettre une virgule. Enfin j'en sais rien c'est une drôle de façon de programmer mais l'erreur de syntaxe on l'a trouvée normalement. :-) Fais-nous savoir ! Et sinon je ne vois pas ce que cette fonction apporte à ta variable $contenuTableau... un while dans la déclaration d'un array... Wow, j'ai toujours su que le PHP était souple mais à ce point là ^^ .
0
milo1986 Messages postés 126 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 30 août 2011 22
19 sept. 2007 à 09:43
Bon ben en fait j'ai trouvé une tout autre solution qui modifie entièrement mon code, je fais un lien au cas où...

http://www.fpdf.org/fr/script/script14.php
0