1. php 大文件上傳解決方案(500M以上)
針對這種問題,我想從如下幾方面著手:
1.首先還是查看環境是否支持超大容量上傳的支持,500M以上的文件通常為視頻文件;
2.即然他要上傳500M以上的文件,估計伺服器性能必定非同凡想,所以暫可不考慮伺服器硬體配置問題,但一定要考慮到網速問題,建議1000M以上出入速率,如少於這個數,你可以放棄這個方案了;
3.前面硬體都過關了,但程序也要加強了,一下上傳500M是哪種語言都不能實現的,唯一解決方案,文件切割,如迅雷下載原理一樣(採用續點上傳),分成若干小塊,然後全部上傳完畢以後,再進行文件合成。
4.至於PHP的文件切割,切割後上傳,以及文件合並,此類代碼網上有許多,樓主可查詢並選擇適合你的代碼,實現你的功能!
以上思路希望能幫到你!
2. PHP 如何上傳圖片和文字
直接form表單加上上傳的屬性,在php那裡判斷下 $_FILE裡面的臨時文件是否存在,存在就遍歷,然後定義一個數組。把上傳到伺服器端的臨時文件挪到指定位置,然後把路徑存到數組裡面,最終存到資料庫。就實現上傳了
3. php + js實現多文件上傳問題
參考如下:
<?php
print_r($_FILES);
?>
<formmethod="POST"enctype="multipart/form-data">
<inputtype=filename=file[]/><br>
<inputtype=filename=file[]/><br>
<inputtype=filename=file[]/><br>
<inputtype=submit>
</form>
提交後$_FILES數組
Array
(
[file]=>Array
(
[name]=>Array
(
[0]=>i.jpg
[1]=>Ico.zip
[2]=>
)
[type]=>Array
(
[0]=>image/pjpeg
[1]=>application/x-zip-compressed
[2]=>
)
[tmp_name]=>Array
(
[0]=>C:.tmp
[1]=>C:.tmp
[2]=>
)
[error]=>Array
(
[0]=>0
[1]=>0
[2]=>4
)
[size]=>Array
(
[0]=>7198
[1]=>121062
[2]=>0
)
)
)
4. JS動態創建的file控制項,PHP 怎麼獲取上傳的文件
首先,你的file控制項要放到form表單內,其次,每個file控制項的name屬性應該不同。下面是我修改後的:
<html>
</head>
<script language="javascript" type="text/ecmascript">
var x=1;
//======================
//功能:在表單中input file控制項
//參數:parentID---要插入input file控制項的父元素ID
// inputID----input file控制項的ID
//======================
function createInput(parentID,inputFileID){
var parent=$(parentID);//獲取父元素
var div=document.createElement("div");//創建一個div容器用於包含input file
x++;
var divName=inputFileID+x;//隨機div容器的名稱
div.id=divName;
var aElement=document.createElement("input"); //創建input
aElement.name=divName;
aElement.type="file";//設置類型為file
var delBtn=document.createElement("input");//再創建一個用於刪除input file的Button
delBtn.type="button";
delBtn.value="刪除";
delBtn.onclick=function(){ removeInput(parentID,divName)};//為button設置onclick方法
div.appendChild(aElement);//將input file加入div容器
div.appendChild(delBtn);//將刪除按鈕加入div容器
parent.appendChild(div);//將div容器加入父元素
}
//============================
//功能:刪除一個包含input file的div 容器
//參數:parentID---input file控制項的父元素ID
// DelDivID----個包含input file的div 容器ID
//============================
function removeInput(parentID,DelDivID){
var parent=$(parentID);
parent.removeChild($(DelDivID));
}
//通過元素ID獲取文檔中的元素
function $(v){return document.getElementById(v);}
</script>
<body>
<form action="test.php" method="post" enctype="multipart/form-data">
<div align="left" id="div_Pic" style="border:1px solid #CCCCCC">
<input name="PicFile" type="file" id="ShowPicFile">
</div>
<input type="button" onClick="createInput('div_Pic','PicFile')" name="button" id="button" value="+ 繼續添加圖片">
<input type="submit" value="提交">
</body>
</html>
然後php就可以通過遍歷$_FILES來獲得每個上傳的文件。下面的簡單例子只是列出每個文件的原文件名:
<?php
forEach($_FILES as $f){
echo $f["name"]."<br>";
}
?>
5. 一般上傳文件用的是javascript還是php之類的伺服器語言
js
是客戶端語言,無法將文件上傳至伺服器
6. php,JavaScript web項目,想從本地電腦自動上傳文件到Linux伺服器,並且SSL加密,怎麼做謝謝
HTTPS實際是SSL over HTTP, 該協議通過SSL在發送方把原始數據進行加密,在接收方解 密,因此,所傳送的數據不容易被網路黑客截獲和破解。本文介紹HTTPS的三種實現方法 。 方法一 靜態超鏈接 這是目前網站中使用得較多的方法,也最簡單。
7. php文件上傳(利用ajaxfileupload.js)
這個是js錯誤,是ajax無法解析返回結果導致的錯誤, $.ajaxFileUpload 的返回值支持 xml 和 json格式
如果dataType 設置為json 格式 在php 文件要輸出的話 就需要用echo json_encode($_FILES); 來輸出$_FILES 數組中所有的值,
如果只需要輸入部分 就需要構造個 這樣:
$res = array();
$res['file_name'] = $_FILES['file']['name'];
echo json_encode($res);
如果dataType 設置為 xml 的話,那就要自己將輸出結果構造成 xml格式
8. php 多個文件上傳問題
你用下面的代碼研究下吧:
提交頁片段:
<form action="progress.php" method="post" enctype="multipart/form-data" >
<input type="file" name="myfile1"/>
<input type="file" name="myfile2"/>
</form>
php片段:
for($i=0;$i<=2;$i++){
if(isset($_FILES["myfile$i"])&&!empty($_FILES["myfile$i"]['name'])){
move_uploaded_file($_FILES["myfile$i"]["tmp_name"],"test/".$_FILES["myfile$i"][name]);
}
// 另外, php上傳文件的大小不是設置了max_file_size就可以的
你需要打開php配置文件 php.ini
查找並修改以下項:
如:
upload_max_filesize = 50M
post_max_size = 50M
memory_limit = 128M
遵循upload_max_filesize < post_max_size < memory_limit
9. php uploadify.js 文件上傳 cookie 失效如何解決
在js部分,添加 『scriptData』 : {『username』:GetCookie(『user』)} 選項,即能夠將名稱為user的cookie值post至 Uploadify.php處理,可以添加多個數據,你要傳什麼cookie就把cookie的名稱加進去,用逗號分隔。