Excel スプレッドシートを受け取り、それをデータベースに集約するための PHP のセグメントを作成しています。主な問題は、相対パスを正しく使用できていないことです (私は信じています)。次のようにコードします。
PHP.ini:
; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
; http://php.net/upload-tmp-dir
upload_tmp_dir = "C:\xampp\tmp"
HTML フォーム:
<form action="Update_data.php" method="POST" enctype="multipart/form-data">
<input type="file" name="file" id="file"></br>
<INPUT type="submit" name="submit" value="Submit"></br>
</form>
PHP スクリプトの関連部分:
//This is where I believe my error to be;
//The script is in xampp/htdocs/
//The temporary file that is uploaded should be? in xampp/tmp/
$inputFileName = '../tmp/' . $_FILES['file']['name'];
//The following correctly outputs the file name when run
echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),'<br />';
//The following is supposed to create a PHPExcel object out of the file, but it can't FIND the file =(
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
$objWorksheet = $objPHPExcel->getActiveSheet();
また、インクルードを使用して tmp ディレクトリをインクルードしようとしましたが、役に立ちませんでした。スクリプト自体に 2 つの異なるセグメントがあり、上記のコードが 2 番目のセグメントにあることも注目に値すると思います (最初のコードはインクルードとエラーの一部です)。また、真ん中に HTML が少しありますが、関係ないと思います。
ありがとう。
PS: ここで PHP ファイルのアップロードと相対パスに関連する質問を 8 つまで読みましたが、それらは無関係のように見えました。また、私はすでに友人に尋ねました (彼は非常に賢い人で、彼の名前は Google です)。しかし、彼は教えてくれませんでした。彼は答えを知っていると思いますが、私は正しい質問をしていませんでした。