Page 1 sur 1

PHPExcel 1.8.0 récupérer valeur de plusieurs cellule

Posté : 20 août 2021, 01:20
par MI7
bonjours je vous explique mon app web.

l'objectif de mon application web est d'avoir un bouton que l'utilisateur clique dessus.

Le code derrière va débuter à scanner tous les dossiers qui sont dans le dossier principal rdv

dans le rdv folder il contient trois dossiers qui se nomme le 1000 , 1001 , 1002 ceux-ci contient des fichiers .xlsx

récupère le dernier fichier .xslx enrigistré dans chacun des dossiers

mais apres cela ca ne fonctionne pas error : PHPExcel_Reader_Exception: Could not open 2.xlsx for reading!

Code : Tout sélectionner

<?php include 'database.php'; require 'PHPExcel/Classes/PHPExcel.php'; require_once 'PHPExcel/Classes/PHPExcel/IOFactory.php'; // recoit la valeur 'someAction' du bouton de la page index. if($_SERVER['REQUEST_METHOD'] == "POST" and isset($_POST['someAction'])) { func(); } function func() { //calcule le nombre de dossier dans le dossier rvd $howManyFolder = count(glob('rdv/*', GLOB_ONLYDIR)); //récupère le dernier fichier .xslx sauvegardé dans chacun des dossiers for ($i = 0; $i < $howManyFolder; $i++) { $files = scandir("rdv/100$i", SCANDIR_SORT_DESCENDING); echo "Récupération tous les fichers du dossier 100" . $i . "<br>"; print_r($files ); echo "<br>"; echo "recupere le dernier fichier insérer dans le dossier a l'indice 0 <br>"; $newest_file = $files[0]; print_r($newest_file); echo "<br>"; //load the file .xlsx (mais le code bug ici...) $objExcel=PHPExcel_IOFactory::load($newest_file); //recupere les valeurs dans le fichier .xlsx file $dossier = $objExcel->getActiveSheet()->getCell('A3')->getValue(); $facture = $objExcel->getActiveSheet()->getCell('B21')->getValue(); $date = $objExcel->getActiveSheet()->getCell('Q1')->getValue(); //appel la fonction pour insérer ces valeurs dans la base de données. insertInto($dossier, $facture, $date ); } } ?>
Alors, comment puis-je corriger l'erreur fatale et comment lire le fichier pour continuer le code, je souhaite obtenir 3 valeurs dans le fichier .xlsx et les insérer dans ma base de données.

Merci pour votre temps.

Re: PHPExcel 1.8.0 récupérer valeur de plusieurs cellule

Posté : 23 août 2021, 11:32
par @rthur
PHPExcel_Reader_Exception: Could not open 2.xlsx for reading
Vu le message d'erreur, c'est juste que PHP n'arrive pas à ouvrir le fichier.

Donc repars d'une page blanche (un nouveau script PHP) où tu mets uniquement le code le plus minimaliste possible pour ouvrir ce fichier (avec le nom en dur), et voit si ça marche.
Essaye aussi avec file_get_contents() pour voir si ça bloque aussi ou pas.

Ça peut être un problème de chemin incorrect, de fichier corrompu, de permissions Windows, etc...

Re: PHPExcel 1.8.0 récupérer valeur de plusieurs cellule

Posté : 08 sept. 2021, 23:48
par MI7
absolument c'était tout bête et vous aviez raison.

j'ai rajouté cette ligne de code pour trouver le chemin du fichier.

//give the path of the file
$newest_file = dirname(__FILE__) . '/rdv/100' . $i . '/' . $newest_file;