0

ファイル .xls をダウンロードして、データベース oracle にアップロードしたいと考えています。しかし、「ファイル名 .xls を読み取れません」というエラーが表示されます。

以下は私のスクリプトです:

               <? require_once (dirname(__FILE__)."/upload/upBc.php");

               if(!empty($_FILES["file"])){
                    echo $file = $_FILES["file"];
               }else{
                  /*$file = "/opt/lampp/htdocs/avar/pp/ccr/test.xls";*/
                     $file = '/www.upload.com/pm_ms/test.xls';
               /* $file = "website_data_".  date('ymd').".xls";*/



               }
                    $upload = new upload();
                    $upload->setFile($file);
                    $upload->getFileType();
                    $upload->getFileName();
                    $upload->getFileDir();
                    $upload->readDataTbc();
                    $dataD = array ();
                    $dataD = $upload->getDataTbc();
                        echo "<table border = 1>";
                        for($i=1;$i < count($dataD);$i++){
                            echo "<tr>";
                            for($j=0;$j < $upload->getHSize();$j++){
                                echo "  <td>".$dataD[$i][$j]."</td>";
                            }
                            echo"</tr>";
                          }
                          echo"</table>";
                          echo"data length=". count($dataD);
                          $upload->commitDataTbc();


       ?>

私が使用する場合$file = "/opt/lampp/htdocs/avar/pp/ccr/test.xls";。私のプログラムでは動作しますが、$file = '/www.upload.com/pm_ms/test.xls';. THE FILENAME test.xls is Not Readable というエラーが表示されます

4

1 に答える 1

0

これはおそらく/www.upload.com/、サーバーに存在しないためです。

ファイルへの実際のパスを知っていますか? URI に/これをプレフィックスとして付けることで、URI は絶対的なものになります。つまり、サーバーから文字どおりに読み取ろうとしていることを意味し/www.upload.comます。./upload.com/これを相対的なものにしたい場合は、または単にupload.com/パスのプレフィックスとして試すことができます。

ただし、(サーバーのフォルダーではなく) ウェブサイト upload.com からロードしようとしている場合は、2 つのオプションがあります。

  1. (サポートされている場合) ファイル名を URL として設定します。$file = 'http://www.upload.com/pm_ms/test.xls';
  2. ファイルをダウンロードして、ローカルで開きます。

#2の場合:

$file = 'test.xls';
$ctnts = file_get_contents('http://www.upload.com/pm_ms/test.xls');
file_put_contents($file, $ctnts);
于 2012-05-23T10:46:50.550 に答える