Bonjour,

Actuellement, j'utilise PhpExcel pour transférer des informations d'une base de données vers un fichier excel 2003 mais je rencontre un problème pour la sauvegarde de ce fichier.

Le fichier que j'essaie de généré comporte une quantité d'information assez importante. c'est à dire 18000 lignes et 15 colonnes.

Dans un premier temps pour ce script j'ai du augmenter la valeur memory_limit dans le php.ini pour que le script lise toutes les informations dans ma base de données.

Le problème que j'arrive pas à résoudre est la fonction save de PhpExcel.
Puisque mon script s'arrête juste avant.

Voici mon code :

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
38
39
40
41
42
43
 
<?php
 
	$connect = mysql_connect("localhost", "root", "");
	mysql_select_db('entreprise');
 
	$sql = 'select * from ConvertCsvXls';
	$result = mysql_query($sql);
 
include 'PHPExcel.php';
include 'PHPExcel/Writer/Excel5.php';
 
$workbook = new PHPExcel;
 
$sheet = $workbook->getActiveSheet();
$cell = 1;
while ($donnees = mysql_fetch_array($result))
	{
		$sheet->getCell('A'.$cell)->setValueExplicit($donnees['champ1'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('B'.$cell)->setValueExplicit($donnees['champ2'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('C'.$cell)->setValueExplicit($donnees['champ3'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('D'.$cell)->setValueExplicit($donnees['champ4'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('E'.$cell)->setValueExplicit($donnees['champ5'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('F'.$cell)->setValueExplicit($donnees['champ6'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('G'.$cell)->setValueExplicit($donnees['champ7'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('H'.$cell)->setValueExplicit($donnees['champ8'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('I'.$cell)->setValueExplicit($donnees['champ9'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('J'.$cell)->setValueExplicit($donnees['champ10'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('K'.$cell)->setValueExplicit($donnees['champ11'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('L'.$cell)->setValueExplicit($donnees['champ12'], PHPExcel_Cell_DataType::TYPE_STRING);
		$sheet->getCell('M'.$cell)->setValueExplicit($donnees['champ13'], PHPExcel_Cell_DataType::TYPE_STRING);
 
		$cell++;
 
		echo "$cell.. </br>";
	}
echo "Génération du fichier en cours </br>";
$writer = new PHPExcel_Writer_Excel5($workbook);
echo "Ecriture du fichier</br>";
$records = 'fichier1.xls';
$writer->save($records);
echo "Génération fichier terminé";
?>
Donc arrivé à la dernière étape, je ne comprend pas d'où peut venir mon problème, est-ce que cela vient de mon serveur web ou de mon script ?

Merci d'avance.