if(is_uploaded_file($_FILES['file']['tmp_name'])
=>
if(is_uploaded_file($_FILES['file']['tmp_name']))

解决方案 »

  1.   

    是不是有地方代码不对
    上传时间好长
    随后跳超时
    而且set_time_limit(0);之后就更长了
      

  2.   

    jakey9826的回答上正解,至于楼主说的很长时间。是这样的:
            do
            {
                $filename[0]="1"; 
                $name=implode(".",$filename);
                $uploadfile=$uploaddir.$name;
            }
            while(file_exists($uploadfile));
    你这个部分写了一个无限循环(前提条件1.jpg是存在的),先执行语句在循环后,检查到存在1.jpg,然后继续执行do括号内的语句,但是$filename[0]依然是执行第一次循环起前的值,导致$filename[0]永远是1,当然接下来的$uploadfile也永远是1.jpg,即到while的检查部分也永远是存在,再永远的好像以上所讲的继续无限循环,导致超时才停止执行。
    这样写才对:$i=1;
           do
            {
                $filename[0]=$i++; 
                $name=implode(".",$filename);
                $uploadfile=$uploaddir.$name;
            }
            while(file_exists($uploadfile));
      

  3.   

    不好意思啊楼猪比较笨
    还有个问题搞不明白
    is_uploaded_file -- 判断文件是否是通过 HTTP POST 上传的
    我是自己在自己机器上传
    是不是就不算HTTP POST了?
    我运行之后的确是传上来了,也符合我的要求了
    但是他echo"上传失败!"
    那说明不是HTTP POST啦?
    那我这个还是写的不对咯?因为自己传自己机器的时候成功却显示失败
    有点不明白望指点
      

  4.   

    是属于HTTP POST 上传的,不关自己机器的是,只要是在浏览器上传的,都是POST的
      

  5.   

    那if(is_uploaded_file($_FILES['file']['tmp_name']))应该是执行
            echo "<center>上传成功</center>";
            echo "<br><center><a href='http://localhost/danci/atop.php'>点我返回</a></center>";
    这个的吗?
    为什么是执行了下面的 else?
    有点不明白,请指点
      

  6.   

    如果图片不是上传的话那就执行
    else

    建议:     
    if (move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile))
        {
                
                if(is_uploaded_file($_FILES['file']['tmp_name']))  //move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile)这个函数是将上传的图片复制下来!具体的来说你用的是不对的!
            {
                    echo "<center>上传成功</center>";
                    echo "<br><center><a href='http://localhost/danci/atop.php'>点我返回</a></center>";
                }
                  else
              {
                    echo "上传失败!";
                  }
            }
      
    如下:
    if(is_uploaded_file($_FILES['file']['tmp_name']))  //先判断图片是由HTTP POST 传送的
    {
       if (move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile)) //进行复制
         { 
             echo "<center>上传成功</center>";
             echo "<br><center><a href='http://localhost/danci/atop.php'>点我返回</a></center>";
         }
        else
          {
            echo "上传失败!";
           }