Lecture d'un fichier excel de plus 200 lignes avec PHPExcel
ksomda
Messages postés36Date d'inscriptionlundi 17 février 2014StatutMembreDernière intervention 2 septembre 2016
-
Modifié par NHenry le 1/09/2016 à 19:44
ksomda
Messages postés36Date d'inscriptionlundi 17 février 2014StatutMembreDernière intervention 2 septembre 2016
-
2 sept. 2016 à 19:19
Bonjour,
Je viens vers vous pour solliciter de l'aide.
Actuellement, j'importes un fichier excel contenant maximum 15 lignes avec une seule feuille de tableur. Cette importation marche.
Toutefois, j'ai constaté que avec les fichiers qui seront importés dans mon application contiendront plus de 200 lignes ce nombre est évolutif.
Aussi, avec la méthode de lecture avec PHPExcel que j'ai adopté, mon code php n'arrive pas à obtenir le nombre de lignes car le nombre de colonnes est fixe.
Veuillez trouvez ci - dessous le code de traitement pour les détails.
jordane45
Messages postés37733Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 1 octobre 2023342 1 sept. 2016 à 22:20
Bonjour,
Je ne comprend pas ...
avec la méthode de lecture avec PHPExcel que j'ai adopté, mon code php n'arrive pas à obtenir le nombre de lignes car le nombre de colonnes est fixe
Quel est le rapport avec un nombre de colonne fixe... et le fait qu'il n'arrive pas à "obtenir" le nombre de lignes ???
As tu essayé de faire un echo de ta variable
$highestRow
?
Qu'est-ce que ça t'affiche ??
De plus... ne serait-ce pas du au max_execution_time paramétré dans ton php.ini ?
Quelle est la taille du fichier excel (en méga) ?
Ensuite.. pourquoi faire des
utf8_decode(utf8_encode
???
Pourquoi ne forces-tu pas, via le header, à dire que tu travailles en utf8 directement ?
Par exemple en utilisant :
header('Content-Type: text/html; charset=utf-8');
Puis.... le temps des tests.. retire les redirections pour que tu puisses voir les éventuels messages d'erreur s'afficher sur ta page ! (et remplaces les par des ECHO éventuellement)
ksomda
Messages postés36Date d'inscriptionlundi 17 février 2014StatutMembreDernière intervention 2 septembre 2016 2 sept. 2016 à 10:31
Bonjour Jordane45, merci pour ta réponse. Pour les questions que tu m'a posé voici les reponse:
1. Je ne pense pas qu'il ya un lien mais j'ai exposé mon soucis pour avoir de l'aide.
2. Lorsque je vais echo de la variable
$highestRow
je trouve le nombre
1
.
3. La taille du fichier est compris entre 5 - 20 Méga pourtant dans le fichier php.ini de mon wampserver,
j'ai ces lignes
jordane45
Messages postés37733Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 1 octobre 2023342 Modifié par jordane45 le 2/09/2016 à 15:43
On va reprendre dans l'ordre ....
Peux tu tester le code suivant et me dire ce que ça te retourne ?
//A placer au début de ton fichier php
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
define('EOL', (PHP_SAPI == 'cli') ? PHP_EOL : '<br/>');
ksomda
Messages postés36Date d'inscriptionlundi 17 février 2014StatutMembreDernière intervention 2 septembre 2016 2 sept. 2016 à 16:23
j'ai intéressé dans le code que tu m'a dit de placer au début de mon fichier php.
J'ai ajouter également le code de traitement de Excel. Voici ce résultat.
Highest Column A Get Highest Row 1 Array ( [1] => Array ( [A] => )
)
jordane45
Messages postés37733Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 1 octobre 2023342
>
ksomda
Messages postés36Date d'inscriptionlundi 17 février 2014StatutMembreDernière intervention 2 septembre 2016 2 sept. 2016 à 17:33
Ton fichier exclel ne contiendrait pas plusieurs onglets par hasard ????
ksomda
Messages postés36Date d'inscriptionlundi 17 février 2014StatutMembreDernière intervention 2 septembre 2016
>
jordane45
Messages postés37733Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 1 octobre 2023 2 sept. 2016 à 19:19
Le fichier que j'ai uploadé avec ton code contient une seule feuille.
Cependant, j'ai testé ton code avec un fichier contenant plusieurs onglet. L'instruction
echo "<pre>"; print_r($sheetData); echo "</pre>";
me renvoit une page blanche vide sans erreur.
Dans ce cas, j'ai fait un débogage avec: