首 页   · 站长博客 · 用户注册 · 会员登陆  · 会员排行  ·最新主题  ·最近回复  精华区  版权声明  ·论坛管理
  当前登录身份:游客,请先登录。  笔名: 口令: 验证码:   
楼 主  index »  PHP安装/语法/函数 » 文件上载遇到的问题  


  作者:iamclq
  注册时间:2008-09-26
  主题/回复:1/0
  积分:32
  等级:★(二级)
  称号:初出茅庐

  iamlcq@126.com
  未提供
  未提供

 

 发表:2008-09-30 10:10:51 阅读 3039 次 回复 1 次 得分1  |   字号 字色
文件上载遇到的问题
上传文件页面:

<html>
<title>Upload JPG</title>
<body>
<form enctype="multipart/form-data" action="upload.php" method="POST">
Upload file:<input name="ufile" type="file">
<input type="submit" value="Upload">
</form>
</body>
</html>

PHP处理页面:

<?php
echo 'tmp_name:'.$_FILES['ufile']['tmp_name'];
echo "<p>";
echo 'name:'.$_files['ufile']['name'];
echo "<p>";
echo 'size:'.$_FILES['ufile']['size'];
echo "<p>";
echo 'type:'.$_FILES['ufile']['type'];
echo "<p>";
echo 'Error:'.$_FILES['ufile']['error'];
echo "<p>";

if (is_uploaded_file($_FILES['ufile']['tmp_name'])){
echo "IS UPLOAD FILE";
echo "<p>";
}
if (!move_uploaded_file($_files['ufile']['tmp_name'], 'D:\\')) {
echo "MOVE FILE Error!";
echo "<p>";
}
?>

为什么上面的 $_files['ufile']['name'] 为空,而且 move_uploaded_file 执行失败。

我系统环境是 WINDOWS XP + APACHE 2.2 + PHP5

 
 1#楼  
 
  回复人:coolboy0316
  注册时间:2008-03-11
  主题/回复:19/44
  积分:367
  等级:★★(四级)
  称号:崭露头角

   
 1#楼 发表于2008-10-03 16:04:48  评分:1 

回复给楼主(iamclq)
两点,你试一下.
第一:加上<input type="hidden" name="MAX_FILE_SIZE" size="1000000">
第二:$_FILES该成大写.
给你一个我的上传文件例子,如果还不行,QQ我:547898608
<div  id="LayerLOW">
<h2  align="left"><font size="+1" color="#00CC00">您当前的位置是:->><a href="upload_software.php">上传软件</a></font></h2>
<form action="insert_software.php" method="post" enctype="multipart/form-data" name="software">
     <input type="hidden" name="MAX_FILE_SIZE" size="1000000">
     <table align="center" border="1">
      <tr>
      <td>软件名称:</td><td><input type="text" name="software_title"></td>
  </tr>
  <tr>
      <td>软件类型:</td><td>
                           <select name="software_type">
         <option value="办公软件">办公软件</option>
 <option value="通讯软件">通讯软件</option>
 <option value="其他软件">其他软件</option>
   </select>

</td>
  </tr>
  <tr>
      <td>软件介绍:</td><td><textarea name="software_introduce" cols="50" rows="10"></textarea></td>
  </tr>
  <tr>
      <td>上传图片:</td><td><input type="file"  name="picturefile" value="浏览"></td>
  </tr>
  <tr>
      <td>选择软件:</td><td><input type="file" name="userfile" value="浏览"></td>
  </tr>
  <tr>
      <td><input type="submit" value="上传"></td><td><input type="reset" value="重置"></td>
  </tr>
 </table>
</form>
</div>

处理页面:
<?php
   require('judge_userlogo.php');
   require('opendb.php');
   $software_title=$_POST['software_title'];
   $software_type=$_POST['software_type'];
   $software_introduce=$_POST['software_introduce'];
   $software_size=$_FILES['userfile']['size'];
   $filetype=$_FILES['userfile']['type'];
   $picture_type=$_FILES['picturefile']['type'];
   $username=$_SESSION['username'];
   $upload_time=date('Y-m-d G:i:s');
   $picture=$_FILES['picturefile']['name'];
   $picture_path='picture/'.$_FILES['picturefile']['name'];
   $software_path='software/'.$_FILES['userfile']['name'];
   if(empty($software_title) || empty($software_type) || empty($software_introduce)){
     echo "<script language='javascript'>alert('请添写必要的信息!');window.history.back();</script>";
     exit;
   }
   if($_FILES['userfile']['error']>0){
     echo "<script language='javascript'>alert('上传出错了!');window.location='index.php';</script>";
 exit;
   }
   if($filetype!='application/octet-stream' && $filetype!='application/x-zip-compressed' && $filetype!='application/vnd.ms-powerpoint' && $filetype!='application/msword' && $filetype!='application/x-dot'){
    echo "<script language='javascript'>alert('请上传合法的文件格式!');window.history.back();</script>";
exit;
   }
   if(is_uploaded_file($_FILES['userfile']['tmp_name'])){
      if(!move_uploaded_file($_FILES['userfile']['tmp_name'],$software_path)){
     echo "<script language='javascript'>alert('上传出错了啊,请稍后重试!');window.location='index.php';</script>";
 exit;
  }
   }
   if(empty($picture)){
       $query="insert into software_information(software_title,software_type,software_introduce,software_path,software_size,username,upload_time) values ('".$software_title."','".$software_type."','".$software_introduce."','".$software_path."','".$software_size."','".$username."','".$upload_time."')";
       $result=$db->query($query);
       if(!$result){
         echo "<script language='javascript'>alert('上传失败,请重试!');window.history.back();</scirpt>";
     exit;
         }else{
             echo "<script language='javascript'>alert('上传成功!');window.location='index.php';</script>";
         exit;
        }  
   }
      if ($picture_type!='image/jpeg' && $picture_type!='image/pjpeg' && $picture_type!='image/gif'){
         echo "<script language='javascript'>alert('文件上传只能为.jpg.gif格式');window.history.back();</script>";
     exit;
       }
      if(is_uploaded_file($_FILES['picturefile']['tmp_name'])){
         if(!move_uploaded_file($_FILES['picturefile']['tmp_name'],$picture_path)){
         echo "<script language='javascript'>alert('上传出错了啊,请稍后重试!');window.location='index.php';</script>";
     exit;
      }
       }
      $query="insert into software_information(software_title,software_type,software_introduce,software_path,software_size,username,upload_time,picture_path) values ('".$software_title."','".$software_type."','".$software_introduce."','".$software_path."','".$software_size."','".$username."','".$upload_time."','".$picture_path."')";
      $result=$db->query($query);
      if(!$result){
        echo "<script language='javascript'>alert('上传失败,请重试!');window.history.back();</scirpt>";
    exit;
      }else{
          echo "<script language='javascript'>alert('上传成功!');window.location='index.php';</script>";
      exit;
   }  
?>
  页数1/1首页 « 1 » 末页
  发表回复:您还没有登陆,无法发表回复。请先[登陆]

一起PHP技术联盟 主办:一起PHP 联系方式:站长QQ:4304410 QQ群:8423742 20159565 站长博客 E-mail: nqp@nqp.me 执行时间:0.016sec
SimsmaBBS 2008 (v6.0) Developed by 17php.com,Copyright(C)2003-2010 All rights reserved. 副本授权:一起PHP官方专用版