Tad老師你好,
最在寫模組,遇到一個問題,
就是我依老師的老師在書中提供的範例寫了一個檔案上傳的功能,
檔案的上傳類型可以在偏好設定那邊設,
我試過了一些檔案類型都可以正常上傳,
唯獨CSV檔無法上傳,
不知道是不是我哪裡設定錯誤,
還是csv檔要經過特別處理,
以下是我的上傳的function
function fileupload($filename,$formname)
{
include_once XOOPS_ROOT_PATH.'/class/uploader.php';
global $xoopsModuleConfig;
date_default_timezone_set("Asia/Taipei");
$i = 0;
$tok = explode(";",$xoopsModuleConfig['filetype']);
foreach($tok as $value)
{
$allow[$i] = $value;
$i++;
}
$dir = XOOPS_ROOT_PATH . '/uploads/verify'; //上傳目錄
$uploader = new XoopsMediaUploader($dir , $allow , $xoopsModuleConfig['filesize']);
$newfilename=date("YmdHis").rand(1111,9999).strstr($filename,".");
$uploader->setTargetFileName($newfilename);
if ($uploader->fetchMedia($formname,0)) {
if (!$uploader->upload())
{
$type = $uploader->getMediaType ();
redirect_header($_SERVER['PHP_SELF'], 5, $type.$uploader->getErrors());
return false;
} else
{
redirect_header($_SERVER['PHP_SELF']."?file=".$newfilename, 5, '上傳成功!');
return $newfilename;
}
} else
{
redirect_header($_SERVER['PHP_SELF'], 5, $uploader->getErrors());
return false;
}
}
csv檔上傳錯誤的訊息如附件。
而csv檔案MIME的部是設text/csv和text/comma-separated-values