没有错误提示,检测到$userfile=""就跳出来了
html:<form name="faddjz" method="post" enctype="multipart/form-data" onsubmit="return checkdata();">
<input name="isSubmit" type="hidden" value="yes">
<input type="hidden" name="MAX_FILE_SIZE" value="500000">
<input type="file" name="userfile">
<input type="submit" name="Submit1" value="提交">
<input type="file" name="userfile2">
</form>举例调用:<?uploadLogo("upload/p001.jpg",$userfile)?>在函数中输出文件名 echo $userfile_name,输出为""

解决方案 »

  1.   

    ^_^,你是用的变量
    userfile_type
    userfile_name
    userfile_size
    都要global一下才可以,明白吗?
      

  2.   

    非也非也,楼上的没明白我的意思,global设置过了,不用函数的话代码没问题,用了函数$userfile好像就传不进来,比如说上传两个文件userfile,usrefile2,如果第一个文件框我没选,选第二个文件框上传,就会有$userfile=""的状况,我想肯定是什么地方我没搞明白
      

  3.   

    if (!$userfile) 不能这样使用,因为<input type="file" name="userfile">传进来的是一个文件对象,你可以先不用这个条件试试仅供参考
      

  4.   

    可能楼上说的对,$userfile是一个文件对象,
    你可以去掉这个判断就直接试一下,看看能不能成功!
      

  5.   

    在上传文件时,一般都要先拷到临时目录,所以在进行函数调用之前进行判断如果文件的size为空则不进行调用直接退出
    判断语句如下:
    $filename = "tiimagename".($ti);
    $filename_size = "tiimagename".($ti)."_size";
    $filename_type = "tiimagename".($ti)."_type";
    $filename_name = "tiimagename".($ti)."_name";
    if(0 < $$filename_size)
    {
    $rs = UploadFile($$filename,$$filename_size,time().$$filename_name,UPLOAD_PATH_FOR_IMAGES.$date_page);
    if( $rs['result'] == 'FAILDED')
    {

    js_alert_back($rs['info']);
    exit;
    }
    $tiObj->Set("tiimagename",$rs['info']);
    }
    else{
    $tiObj->Set("tiimagename","");
    }
    里面变量改成你的变量,试试看
      

  6.   

    还是不行啊,调用现在的情况好像文件对象传不进去,调用前文件都在,调用后所有参数都没了,用楼上的方法也不行,这是我现在的代码:
    <?
    function uploadLogo($filepath,$loadfile)
    {
    //这里输出$loadfile_name为空,说明文件不存在
    //莫非文件对象不能在函数间传递?如果用foreach方法遍历可以完成上传,可是那样我就不知道上传的哪个是哪个了
             if  (substr($loadfile_type,0,5)=='image') {
                $dat = date("d,m,y");
        $fname = $loadfile_name;
                $fileSize = $loadfile_size;
                $contents = fread($fp,$fileSize);
                fclose($fp);
                if ($fileSize<5000000){
                $fp = fopen("$filepath","wb");
                fwrite($fp, $contents);
                copy($loadfile,"$filepath");
                unlink($loadfile);            fclose($fp);
    echo "<script>alert(\"上传成功\")</script>";
                } else {
                echo "<script> alert('你要上传的".$fname."文件太大了!!!');\n
                </script>";
                }
                } else {
                   echo "<script>\n alert(\"你要上传的".$fname."不符合要求!\");\n
                    \n </script>";
                }
    }      //end function uploadLogo
    if ($isSubmit=="yes") 
    {
    echo "<script>alert(\"".$file1_name."\");</script>";   //这里有文件名
        if ($file1_size!=0) uploadLogo("tpsc/111.jpg",$file1);
        if ($_FILES['file']['size'][1]!=0) uploadLogo("tpsc/222.jpg",$_FILES['file']['name'][1]);
        if ($_FILES['file']['size'][2]!=0) uploadLogo("tpsc/333.jpg",$_FILES['file']['name'][2]);
    }
    ?>
    <form name="faddcs" method="post" enctype="multipart/form-data">
    <input name="isSubmit" type="hidden" value="yes">
    <input type="hidden" name="MAX_FILE_SIZE" value="500000">
    <input type="file" name=file1 value="">
    <input type="file" name=file2 value="">
    <input type="file" name=file3 value="">
    <input type="submit" name="submit1" value="Submit">
    </form>
      

  7.   

    //upload.php
    <?php
    if(!$UploadAction):
    ?>
    <HTML>
    <HEAD>
    <TITLE>文件上传</TITLE>
    </HEAD>
    <BODY><CENTER><TABLE><CENTER>
    <FORM ENCTYPE = "multipart/form-data" NAME = "SubmitForm"
    ACTION = "upload.php" METHOD = "POST">
    <INPUT TYPE = "hidden" NAME = "MAX_FILE_SIZE" VALUE ="1000000">
    <INPUT TYPE = "hidden" NAME = "UploadAction" VALUE = "1">
    <TR>
    <TD><INPUT NAME = "UploadFile" TYPE = "file" SIZE = "30"></TD>
    </TR>
    <TR>
    <TD><INPUT NAME = "submit" VALUE = "提交" TYPE = "submit"></TD>
    <TD><INPUT NAME = "reset" VALUE = "重置" TYPE = "reset"></TD>
    </TR>
    </FORM></CENTER></TABLE></CENTER><p><p><center><b>欢迎测试,谢谢!</b></center></BODY>
    </HTML>
    <?php
    else:
    ?>
    <HTML>
    <HEAD>
    <TITLE>upload</TITLE>
    </HEAD>
    <BODY>
    <?php
    $UploadAction=0;$TimeLimit=60; 
    set_time_limit($TimeLimit);If(($UploadFile != "none")&&($UploadFile != ""))
    {
    $UploadPath = AddSlashes(dirname($PATH_TRANSLATED))."\\upload\\";$FileName = $UploadPath.$UploadFile_name; 
    if($UploadFile_size <1024) 
     {
      $FileSize = (string)$UploadFile_size . "字节";
     }
    elseif($UploadFile_size <(1024 * 1024))
     {
      $FileSize = number_format((double)($UploadFile_size / 1024), 1) . " KB";
     }
    else
     {
      $FileSize = number_format((double)($UploadFile_size/(1024*1024)),1)."MB";
     }if(!file_exists($FileName))
     {
        if(copy($UploadFile,$FileName))
        {
         echo "文件 $UploadFile_name (共$FileSize)上传成功!";
        }
        else
        {
         echo "文件 $UploadFile_name上传失败!";
        }
        unlink($UploadFile);
     }
    else
     {
      echo "该文件已经存在!";
     }
    }
    else
    {
    echo "<center>请检查是否指定了上传文件;且文件大小请勿超过1Mb!</center>";
    }set_time_limit(30); 
    ?>
    <BR><center><A HREF = "upload.php">返回</center></A>
    </BODY>
    </HTML>
    <?php
    endif;
    ?>
    已经完整的了,在同级目录建立一个upload目录用于保存上传文件
    如果有需要自己修改一下吧,没有加入扩展名判断等……