我想在php中使用文件上傳控件上傳CSV文件,如果文件大小超過10 MB,它不會上傳它只是掛起頁面執行。我已經設置CSV文件上傳問題
在頁面上的ini_set( 「upload_max_filesize的」, 「50M」); ini_set(「post_max_size」, 「50M」);
,仍然沒有對任何me.If我運氣上傳文件高達8 MB的工作fine.I感到困惑,爲什麼isue仍然存在事件我有沒有設置相關的文件大小在同一頁面上傳。請幫幫我。
由於提前,
以下是我的PHP代碼
<?php
set_time_limit(0); ini_set('display_errors', 1); ini_set("upload_max_filesize", "100M"); ini_set("post_max_size", "100M");
ini_set("session.save_handler", "files"); session_start(); header ('Last-Modified: '.gmdate("D, d M Y H:i ").' GMT'); header ('Expires: '.gmdate("D, d M Y H:i ").' GMT'); header ('Cache-Control: no-cache, must-revalidate'); header ('Pragma: no-cache');
if ($_FILES['import']['error'] == UPLOAD_ERR_OK) {
$tmpName = $_FILES['import']['tmp_name'];
$csvName = $_FILES['import']['name'];
$mime = $_FILES['import']['type'];
$validMimes = array('text/csv');
if(!strpos($csvName, '.csv'))
{
$errMsg = ' [' . $csvName . '] is INVALID csv file (<i>csv only</i>)';
}
if (is_uploaded_file($tmpName) && !isset($errMsg)) // upload photo file then save author if uploaded file is VALID
{
// upload photo to server
$filename = 'uploads/products/';
$pathParts = pathinfo($csvName);
$photoFile = _generateUniquePhoto($pathParts['extension']);
//move_uploaded_file($tmpName, $filename . $photoFile);
//chmod($filename . $photoFile, 0777);
// save to database
$fullfilename = $filename.$photoFile;
//$this->data['University']['add_logo'] = $photoFile;
$ftp_server = "XXXXX";
$ftp_user_name = "XXXX";
$ftp_user_pass = "XXXXX";
// set up basic connection
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// check connection
if ((!$conn_id) || (!$login_result))
{
echo "FTP connection has failed!";
echo "Attempted to connect to $ftp_server for user $ftp_user_name";
exit;
} else
{
//echo "Connected to $ftp_server, for user $ftp_user_name";
}
// upload the file
$destination_file1 = "httpdocs/volhub/client/$fullfilename";
$sourcefile1 = "$tmpName";
$upload = ftp_put($conn_id, $destination_file1, $sourcefile1, FTP_BINARY); // line 30
// check upload status
ftp_close($conn_id); }
根據PHP是否在安全模式下運行,則可能需要設置這個INI文件直接,而不是使用'的ini_set()' - 它是你自己的服務器?您可能還想考慮下面的JS替代方案之一,因爲它們通常是更好的體驗(進度條,多個同步文件等) – Basic 2012-04-27 10:31:42
您最好檢查php.ini'upload_max_filesize和post_max_size' – alkhader 2012-04-27 11:41:42