我要无组件就可以实现的,能够读取上传文件和表单数据的那种。

解决方案 »

  1.   


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <title>文件上传</title>
    </head>
     <body>
     <?php
     if($_FILES['upload']['name'])
     {
      $basePath=realpath("./Files/");//获取当前路径下Files目录对应的物理路径表示形式
      $uploadFile=$basePath."\\".basename($_FILES['upload']['name']);//上传文件保存地址
      //因为上传时先将文件保存到临时目录,这个方法是将上传文件从临时目录下移动到上传目录中
      move_uploaded_file($_FILES['upload']['tmp_name'],$uploadFile);
      echo "文件名:".$_FILES['upload']['name']."<br/>";
      echo "文件MIME类型:".$_FILES['upload']['type']."<br/>";
      echo "文件大小(字节):".$_FILES['upload']['size']."<br/>";
      echo "文件临时存放路径:".$_FILES['upload']['tmp_name']."<br/>";
      echo "文件上传状态:".$_FILES['upload']['error']."<br/>";
      switch($_FILES['upload']['error'])
      {
      case 0:echo "文件上传成功!<br/>";break;
      case 1:echo "文件大小超过了PHP.ini中的最大设置!<br/>";break;
      case 2:echo "文件大小超过了表单中的max_file_size限制!<br/>";break;
      case 3:echo "文件只有部分上传!<br/>";
      case 4:echo "没有文件上传!<br/>";break;
      }
      echo "<a href='upload.php'>继续上传</a><br/>";
     }
     else
     {
     ?>
     <form name="upload" enctype="multipart/form-data" action="upload.php" method="post">
     <input type="hidden" name="max_file_size" value="8000000"/><br/>
     <input type="file" name="upload"/><br/>
     <input type="submit" value="上传" /><br/>
     </form>
     <?php
     }
     ?>
     </body>
     </html>
    本页面既可以上传文件,也可以显示表单,是这样的吗?
      

  2.   

    楼上的你好!你的代码只是给出了保存上传文件的功能,没有显示其他表单数据的功能。我看到了一个隐藏域max_file_size,但是没有直接对隐藏域max_file_size操作的代码。
    回二楼,表单混合上传就是既可以保存上传的文件,也可以同时对其他表单元素进行操作的功能。
    我知道asp中使用比较复杂的方法实现这种功能的,不知道如何用php实现。
      

  3.   

    asp实现比较复杂,php实现则比较简单
    所以,要把脑筋换一换
      

  4.   

    我只知道asp的方法,我现在想把它改写成php的,但是网上搜索不到代码。楼上的如果知道怎么实现或者知道代码的地址就在回复中发给我吧。
      

  5.   

    晕倒。php里需要那么分复杂吗?接收图片文件直接用$_FILE就可以接收到了。其他的表单内容。比如INPUT里的。直接用$_POST['名称']就可以了。asp里超麻烦。php里超简单
      

  6.   

    如果表单是用post提交的,建议print_r($_POST[])或者print_r($_POST)看看, 你需要的值应该就在其中了。如果直接获取提交的某个元素的值, $_POST["元素的name值"]即可。
    楼上的几位回复的很对。
      

  7.   

    谢谢各位。我已经查询到了,php只要直接读取$_POST就可以了。