⑴ Thinkphp上傳2個圖片一起上傳可以但是修改某一個的話倆個圖片都變成修改的那張圖為啥
你可以這樣,在你上傳時候分別對這兩個上傳文件的錯誤號進行判斷,錯誤號為4的話是表示沒有文件上傳,用這個條件可以做一個判斷來決定是否兩個圖全都修改
⑵ thinkphp如何將多張上傳的圖片根據狀態分別存儲!
=-=表
id 圖標屬於的文章ID(或其他) 圖片儲存位置 圖片是否公開
表單
圖片上傳使用非同步上傳也就是
frame包涵上傳用的PHP
這樣你就可以對一個文件進行單獨管理
如果你不想這樣則可以
圖 選項
圖 選項
圖 選項
然後
根據上傳圖片信息把選項壓進數組
⑶ thinkphp如何批量上傳圖片
批量上傳圖片就是循環的單張上傳~~,思路和單張上傳差不多的~
⑷ thinkphp圖片批量上傳獲得所有上傳後的地址
前台的文本框name需要設置成數組,比如你的前台圖片上傳input的name是images那你多張圖上傳那麼name就需要改成images[],這樣就不會替換掉前面的了,望採納
⑸ ThinkPHP中圖片最多一次上傳20張,怎麼上傳更多圖片
$User->fenxiang_fm = 'Uploads/'.$info[0]["savename"]; // 這里的$info[0]["savename"]的下標[0]表示上傳的第1個圖片按順序,記住是下標
$User->fenxiang_sc = 'Uploads/'.$info[1]["savename"]; // 這里的$info[1]["savename"]的下標[1]表示上傳的第2個圖片按順序,記住是下標
function upload(){
import("ORG.Net.UploadFile");
$upload = new UploadFile();// 實例化上傳類
$upload->maxSize = 3145728 ;// 設置附件上傳大小
$upload->allowExts = array('jpg', 'gif', 'png', 'jpeg');// 設置附件上傳類型
$upload->saveRule = time;//這里的時間是根據上傳的圖片的多少來自動改變圖片的名稱的(並且時間都不同,所以上傳的圖片的名稱就不會相同)
⑹ thinkPHP3.2.3文件上傳類多張圖片上傳怎麼只有第一張圖片被上傳
可以遍歷傳過來的FILES數組,然後用循環調用UPLOAD類
public function upload(){
$upload = new \Think\Upload();// 實例化上傳類
$upload->maxSize = 2000000 ;// 設置附件上傳大小
$upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 設置附件上傳類
$upload->rootPath = ''./Uploads/';
$upload->savePath = date('Y').'/'.date('m').'/'.date('d').'/';
$upload->subName = array('date', 'H');
$upload->saveName = md5(uniqid());
$info = $upload->upload();
if(!$info) { // 上傳錯誤提示
$this->error($upload->getError());
}else{ // 上傳成功
return $info;
//$this->success('上傳成功!');
}
}
//調用
foreach($_FILES["banner_index"]["size"] as $key=>$val){
if($val>0){
$info=$this->upload(); //判斷上傳文件大小大於0,調用upload
foreach($info as $v){
echo $v["savepath"].$v["savename"]; }
}
}
⑺ Thinkphp上傳多圖時怎麼規定上傳第幾個圖
感覺這挺簡單的,你只判斷那要上傳的拿張圖片的name,如果name不為空就上傳
1:publicfunctionuploadOne(){
if(isset($_FILES['第三個圖片的name'])){
$upload=newThinkUpload();//實例化上傳類
$upload->maxSize=3145728;//設置附件上傳大小
$upload->exts=array('jpg','gif','png','jpeg');//設置附件上傳類型
$upload->savePath='./Public/Uploads/';//設置附件上傳目錄
//上傳單個文件
$info=$upload->uploadOne($_FILES['photo1']);
if(!$info){//上傳錯誤提示錯誤信息
$this->error($upload->getError());
}else{//上傳成功獲取上傳文件信息
echo$info['savepath'].$info['savename'];
}
}
}
2:使用foreach循環遍歷出你存放name數組中的內容,在循環出的時候你可以添加判斷獲取第三
張圖片的name,然後上傳,,
建議使用第二中方法!!
⑻ thinkphp上傳多個圖片,只能上傳一個圖片和保存一個數據,什麼原因
吧你的表結構 截圖看下 不太明白你的第一句
你的那個upload函數不行
thinkphp 自帶函數 會遍歷所有上傳
你每次調用 他都遍歷以便 所以你得到的永遠是上傳最後的一個
隨便不明白你的第一句話的意思 但是建議你這樣做
先上傳所有到一個緩存文件夾里
然後移動文件 再存儲最後的地址