Bonjour,
Au clic sur un bouton, je télécharge un fichier word (.doc) rempli avec des variables issues de ma bdd. Jusque là, tout va bien.
Mais lorsque je veux insérer un tableau dans mon document word, c'est là où tout se gâte.
Pour être plus précis, j'ai un fichier .rtf principal (présent sur le serveur) qui est complété par des fichiers .rtf secondaires (eux aussi présents sur le serveur). les variables de ces fichiers secondaires sont remplis avec les données de la bdd via php.
Voici mon code pour remplir le fichier secondaires "successibles.rtf":
Ensuite j'insère mon tableau dans mon fichier principal "ric.rtf" :
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 $resultatsucc = $bdd->prepare('SELECT * FROM successible WHERE pjt_id = :numpjt '); $resultatsucc->bindValue(':numpjt',$numpjt, PDO::PARAM_INT); $executeIsOk2 = $resultatsucc->execute(); $filesucc = $succ; $fs = fopen($filesucc,'r'); $successibles = fread($fs, filesize($filesucc)); fclose($fs); $tableauSuccessibles .= "<table> <tr> <td>Civilité</td> <td>Prénom</td> <td>Nom</td> <td>Age</td> <td>Lien de parenté</td> <td>Parent de</td> </tr>"; while ($success=$resultatsucc->fetch()) { if ($success['lien_parente_succ'] <> 'Petit enfant') { $enfantSucc = $success['parent_succ']; } else { $enfantSucc = $success['enfant_de_succ']; }; $tableauSuccessibles .= '<tr>'; $tableauSuccessibles .= '<td>'.$success['genre_succ'].'</td>'; $tableauSuccessibles .= '<td>'.$success['prenom_succ'].'"</td>'; $tableauSuccessibles .= '<td>'.$success['nom_succ'].'</td>'; $tableauSuccessibles .= '<td>'.$success['age_succ'].'</td>'; $tableauSuccessibles .= '<td>'.$success['lien_parente_succ'].'</td>'; $tableauSuccessibles .= '<td>'.$enfantSucc.'</td>'; $tableauSuccessibles .= '</tr>'; } $tableauSuccessibles .= "</table>"; $successibles = str_replace("[tableauSuccessibles]", $tableauSuccessibles, $successibles);
Lorsque je télécharge ce fichier en .doc, j'obtiens bien les 2 lignes correspondant mais les balises du tableau sont affichées et la mise en forme, c'est du n'importe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $filename = $ric; $fp = fopen($filename,'r'); $content = fread($fp, filesize($filename)); fclose($fp); $content = str_replace("[successibles]", $successibles, $content);
Quelqu'un peut il m'aider SVP
Par avance merci.
François
Partager