1,配置php.ini文件
主要对下面几个属性值进行设置:
2,预定义变量
列表如下:
创建一个上传域,通过_FILES变量输出上传文件的资料。示例代码如下:
<form action='' enctype='multipart/form-data' method='post' name='uploadfile'>上传文件:<input type='file' name='upfile' /><br> <input type='submit' html' target='_blank'>value='上传' /></form> <?php if (is_uploaded_file($_FILES['upfile']['tmp_name'])) { $upfile =$_FILES['upfile']; foreach ($upfile as $value) { echo $value.'<br>'; }}?>
运行结果如下:
3,文件上传函数
php中使用move_uploaded_file()函数上传文件,语法如下:
bool move_uploaded_file(string filename,string destination)
该函数将文件上传到指定的位置,如果成功则返回true,失败则返回false。参数filename,事临时文件名,即$_FILE[tmp_name];参数destination是上传后保存的新的路径和名称。
示例代码如下:
<form action='' enctype='multipart/form-data' method='post' name='uploadfile'>上传文件:<input type='file' name='upfile' /><br> <input type='submit' value='上传' /></form> <?php if (is_uploaded_file($_FILES['upfile']['tmp_name'])) { $upfile =$_FILES['upfile']; if (move_uploaded_file($upfile['tmp_name'], $upfile['name'])) { echo '上传成功'; }else{ echo '上传失败'; }}?>
运行结果如下:
4,多文件上传
多文件上传有多种方法,下面我们根据单文件上传来演化出一种多文件上传。代码示例如下:
<form action='index.php' enctype='multipart/form-data' method='post' name='uploadfile'>上传文件:<br> <input type='file' name='upfile1' /><br><input type='file' name='upfile2' /><br><input type='file' name='upfile3' /><br><input type='submit' value='上传' /><br> </form> <?php // header('Content-Type:text/html;charset=utf-8');$file1 =$_FILES['upfile1'];$file2 =$_FILES['upfile2'];$file3 =$_FILES['upfile3'];if ($file1['error'] == UPLOAD_ERR_OK){ echo '路径:'.$file1['name'].'<br>'; if (move_uploaded_file($file1['tmp_name'], $file1['name'])) { echo '上传成功<br>'; }else{ echo '上传失败<br>'; }}if ($file2['error'] == UPLOAD_ERR_OK){ echo '路径:'.$file2['name'].'<br>'; if (move_uploaded_file($file2['tmp_name'], $file2['name'])) { echo '上传成功<br>'; }else{ echo '上传失败<br>'; }} if ($file3['error'] == UPLOAD_ERR_OK){ echo '路径:'.$file3['name'].'<br>'; if (move_uploaded_file($file3['tmp_name'], $file3['name'])) { echo '上传成功<br>'; }else{ echo '上传失败<br>'; } } ?>
运行结果如下:
第二种多文件上传的方式的示例代码如下:
<form action='index.php' enctype='multipart/form-data' method='post' name='uploadfile'>上传文件:<br> <input type='file' name='upfile[]' /><br><input type='file' name='upfile[]' /><br><input type='file' name='upfile[]' /><br><input type='submit' value='上传' /><br> </form> <?php // header('Content-Type:text/html;charset=utf-8');$filearray =$_FILES['upfile'];print_r($filearray);foreach ($filearray['error'] as $key =>$error){ if ($error==UPLOAD_ERR_OK) { echo '文件名:'.$filearray['name'][$key].'<br>'; if (move_uploaded_file($filearray['tmp_name'][$key], $filearray['name'][$key])) { echo '上传成功<br>'; }else{ echo '上传失败<br>'; } }}?>
运行结果如下:
除了上面的两种,还有第三种多个文件上传的方式,当然也是我觉得最完美的方式,就是可以一次选择多个文件进行上传。主要就是利用swfupload 来实现。由于我目前的知识有限,会在后面和大家共同学习这个。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答