亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

老師這個upload2跳轉doAction 不能將數組按0 1 2 3這樣顯示啊 這是怎么回事?

<!DOCTYPE?html>
<html>
<head>
????<meta?http-equiv="content-type"?content="text/html";?Charset="utf-8">
????<title></title>
</head>
<body>
<form?action="doAction3.php"?method="post"?enctype="multipart/form-data">
????請選擇上傳文件<input?type="file"?name="myFile[]"?/><br/>
????請選擇上傳文件<input?type="file"?name="myFile[]"?/><br/>
????請選擇上傳文件<input?type="file"?name="myFile[]"?/><br/>
????請選擇上傳文件<input?type="file"?name="myFile[]"?/><br/>
????<input?type="submit"?value="上傳"?/>
</form>
</body>
</html>

doAction3.php

<?php

// print_r($_FILES);

function buildInfo(){

? ? $i=0;

? ? foreach($_FILES as $v){

? ? ? ? //單文件

? ? ? ? if(is_string('name')){

? ? ? ? ? ? $files[$i]=$v;

? ? ? ? ? ? $i++;

? ? ? ? }else{

? ? ? ? ? ? //多文件

? ? ? ? ? ? foreach($v['name'] as $key=>$val){

? ? ? ? ? ? ? ? $files[$i]['name']=$val;

? ? ? ? ? ? ? ? $files[$i]['size']=$v['size'][$key];

? ? ? ? ? ? ? ? $files[$i]['tmp_name']=$v['tmp_name'][$key];

? ? ? ? ? ? ? ? $files[$i]['error']=$v['error'][$key];

? ? ? ? ? ? ? ? $files[$i]['type']=$v['type'][$key];

? ? ? ? ? ? ? ? $i++;

? ? ? ? ? ? }

? ? ? ? }

? ? }

? ? return $files;

}


$info=buildInfo();

print_r($info);


正在回答

2 回答

<?php

require_once?'../lib/string.func.php';
require_once?'upload.func.php';
header("content-type:text/html;charset=utf-8");

function?buildInfo(){
????foreach($_FILES?as?$v){
????????$i=0;

????????//單文件,類型為字符串
????????if(is_string($v['name'])){
????????????$files[$i]=$v;
????????????$i++;
????????}else{
????????????//多文件,類型為數組
????????????foreach?($v['name']?as?$key=>$val){
????????????????$files[$i]['name']=$val;
????????????????$files[$i]['size']=$v['size'][$key];
????????????????$files[$i]['type']=$v['type'][$key];
????????????????$files[$i]['tmp_name']=$v['tmp_name'][$key];
????????????????$files[$i]['error']=$v['error'][$key];
????????????????$i++;
????????????}
????????}
????????return?$files;
????}
}
$info=buildInfo();
print_r($info);


0 回復 有任何疑惑可以回復我~

<?php?

require_once '../lib/string.func.php';

header("content-type:text/html;charset=utf-8");

//print_r($_FILES);

/**

?* 構建上傳文件信息

?* @return array

?*/

function buildInfo(){

$i=0;

foreach($_FILES as $v){

//單文件

if(is_string($v['name'])){

$files[$i]=$v;

$i++;

}else{

//多文件

foreach($v['name'] as $key=>$val){

$files[$i]['name']=$val;

$files[$i]['size']=$v['size'][$key];

$files[$i]['tmp_name']=$v['tmp_name'][$key];

$files[$i]['error']=$v['error'][$key];

$files[$i]['type']=$v['type'][$key];

$i++;

}

}

}

return $files;

}

function uploadFile($path="uploads",$allowExt=array("gif","jpeg","png","jpg","wbmp"),$maxSize=2097152,$imgFlag=true){

if(!file_exists($path)){

mkdir($path,0777,true);

}

$i=0;

$files=buildInfo();

foreach($files as $file){

if($file['error']===UPLOAD_ERR_OK){

$ext=getExt($file['name']);

//檢測文件的擴展名

if(!in_array($ext,$allowExt)){

exit("非法文件類型");

}

//校驗是否是一個真正的圖片類型

if($imgFlag){

if(!getimagesize($file['tmp_name'])){

exit("不是真正的圖片類型");

}

}

//上傳文件的大小

if($file['size']>$maxSize){

exit("上傳文件過大");

}

if(!is_uploaded_file($file['tmp_name'])){

exit("不是通過HTTP POST方式上傳上來的");

}

$filename=getUniName().".".$ext;

$destination=$path."/".$filename;

if(move_uploaded_file($file['tmp_name'],$destination)){

$file['name']=$filename;

unset($file['error'],$file['tmp_name'],$file['size'],$file['type']);

$uploadedFiles[$i]=$file;

$i++;

}

}else{

switch($file['error']){

case 1:

$mes="超過了配置文件上傳文件的大小";//UPLOAD_ERR_INI_SIZE

break;

case 2:

$mes="超過了表單設置上傳文件的大小"; //UPLOAD_ERR_FORM_SIZE

break;

case 3:

$mes="文件部分被上傳";//UPLOAD_ERR_PARTIAL

break;

case 4:

$mes="沒有文件被上傳";//UPLOAD_ERR_NO_FILE

break;

case 6:

$mes="沒有找到臨時目錄";//UPLOAD_ERR_NO_TMP_DIR

break;

case 7:

$mes="文件不可寫";//UPLOAD_ERR_CANT_WRITE;

break;

case 8:

$mes="由于PHP的擴展程序中斷了文件上傳";//UPLOAD_ERR_EXTENSION

break;

}

echo $mes;

}

}

return $uploadedFiles;

}

$fileInfo=uploadFile();

print_r($fileInfo);










0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
手把手教你實現電商網站后臺開發
  • 參與學習       117253    人
  • 解答問題       2101    個

手把手教你用PHP搭建電子商務平臺,由淺入深教你搭建電商系統

進入課程

老師這個upload2跳轉doAction 不能將數組按0 1 2 3這樣顯示啊 這是怎么回事?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號