-2

1.8.0"

私の Web アプリケーションの目標は、ユーザーがクリックするボタンを持つことです。

コード ビハインドは、メインの rdv フォルダーにあるすべてのフォルダーのスキャンを開始します。

rdv フォルダーには、1000、1001、1002 という名前の 3 つのフォルダーがあり、これらには .xlsx ファイルが含まれています。

各フォルダに保存された最後のファイル .xlsx を取得します

しかし、その後は機能しません。

致命的なエラー: キャッチされていない PHPExcel_Reader_Exception: 読み取り用に 2.xlsx を開けませんでした!

致命的なエラーを修正する方法と、ファイルを読み取ってコードを続行する方法について、.xlsx ファイルで 3 つの値を取得し、データベースに挿入したいと考えています。

お時間をいただきありがとうございます。

include 'database.php';
require 'PHPExcel/Classes/PHPExcel.php';
require_once 'PHPExcel/Classes/PHPExcel/IOFactory.php';
 
// receives the 'someAction' value from the index page button.
if($_SERVER['REQUEST_METHOD'] == "POST" and isset($_POST['someAction']))
{
    func();
}

function func()
{
    //calcul the nomber of folder in folder rdv
    $howManyFolder = count(glob('rdv/*', GLOB_ONLYDIR));
    
    //retrieves the last file saved in each of the folders and insert into database
    for ($i = 0; $i < $howManyFolder; $i++) {
        
        $files = scandir("rdv/100$i", SCANDIR_SORT_DESCENDING);
        echo "Recover all files in the folder 100" . $i . "<br>";
        print_r($files ); echo "<br>";
        echo "get the last file inserted in the folder at index 0 <br>";
        $newest_file = $files[0]; print_r($newest_file); echo "<br>";
        
        //load the file .xlsx (but the code bug here -_-)
        $objExcel=PHPExcel_IOFactory::load($newest_file);

        //get all value insinde the .xlsx file
        $dossier = $objExcel->getActiveSheet()->getCell('A3')->getValue();
        $facture = $objExcel->getActiveSheet()->getCell('B21')->getValue();
        $date = $objExcel->getActiveSheet()->getCell('Q1')->getValue();

        //call function to insert these values inside dataBase.
        insertInto($dossier, $facture, $date );
    }
}       
4

1 に答える 1