ユーザーがファイルをアップロードし、そのファイルが保存されてからphpで読み取られるアップロードシステムを作成しました。値はデータベースに挿入されます。すべてが開発サーバーではうまく機能しますが、ライブサーバーでは機能しません。
ライブサイトに別のアップロードシステムがあり、正常に機能しています。別のフォルダにアップロードしてみましたが、うまくいきませんでした。
先日、mimeタイプに問題があったことをご存知でしょう。たとえば、csvファイルをアップロードしましたが、サーバーはそれをテキスト/プレーンドキュメントとして読み取りました。問題にならないように、csvでそれを許可するように構成済みのcodeigniterを構成しました。言及する価値があると思っただけです。
エラー:
PHPエラーが発生しました
重大度:警告
メッセージ:fopen(http://144.119.190.87/designUploads/testing.csv):ストリームを開くことができませんでした:HTTPリクエストが失敗しました!HTTP /1.1401無許可
ファイル名:controllers / headquarters.php
行番号:682
================================================== PHP:
public function importDesign () {
// setting config options
$config['upload_path'] = './designUploads/';
$config['allowed_types'] = 'csv';
$config['overwrite'] = 'true';
// loading upload library
$this->load->library('upload', $config);
// write errors to view file
$error = '';
if (!$this->upload->do_upload('userfile')) {
$this->upload->delete($lastId);
} else {
$data = array('upload_data' => $this->upload->data());
}
$fileData = $this->upload->data();
$name = $fileData['file_name'];
Line 680 ---> if (($handle = fopen(base_url('designUploads/'. $name), "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$query = $this->db->query('
UPDATE rollout_systems
SET Mig_type = "'. $data[2] .'",
hardw_destination = "'. $data[3] .'",
new_model = "'. $data[4] .'",
new_system = "'. $data[5] .'",
Mig_Class = "'. $data[6] .'"
WHERE sys_name = "'. $data[0] .'"
AND EAM_User = "'. $data[1] .'"
');
if ($query) {
redirect('headquarters/migrationDetails');
}
}
fclose($handle);
}
}