Bonjour,
Je veux faire du publipostage depuis les informations récupérées dans un fichier MS Excel.
Je récupére les information par un script php et à chaque informations dans le fichier excel, je lance le script publipostage, en php, pour créer un fichier work.
mon code fonctionne pour la première ligne ms pas pour le reste des lignes d'excel.
Pouvez-vous m'aider à créer un publipostage qd on a plusieurs ligne dans le fichier excel ?
Merci,
Le fichier PHP qui lit le fichier MS excel:
Le fichier publipostage annexe1.php :
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 define("FILENAME",$dossier. $fichier); $excel=new COM("Excel.application"); $excel->sheetsinnewworkbook=1; $excel->Workbooks->open($dossier . $fichier); $book=$excel->Workbooks(1); $i = 1; while($cell=$sheet->Range('A'.$i) != ""){ $i = $i+ 1; } $i = $i -1; $u = 2; for($u=2; $u<=$i; $u++){ $cell=$sheet->Range('A'.$u); $date=$cell->value; $cell=$sheet->Range('B'.$u); $affectation=$cell->value; $cell=$sheet->Range('C'.$u); $gestionnaire=$cell->value; $_SESSION['date'] = $date; $_SESSION['affectation'] = $affectation; $_SESSION['gestionnaire'] = $gestionnaire; echo '<script language="Javascript"> document.location.replace("http://web/annexe1.php"); </script>'; } $excel->Quit();
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 $filename="opposition.rtf"; if(file_exists($filename)){ //On ouvre le modele $fp = fopen ($filename, 'r'); $content = fread($fp, filesize($filename)); fclose ($fp); $content=str_replace("[date]",utf8_decode($_SESSION['date']),$content); $content=str_replace("[affectation]",utf8_decode($_SESSION['affectation']),$content); $content=str_replace("[gestionnaire]",utf8_decode($_SESSION['gestionnaire']),$content); header("Content-Type: application/msword" ); header("Content-Disposition: attachment; filename=$filename"); $fh=fopen($filename, "rb"); fpassthru($fh); fclose($fh); }
Partager