php实现文件上传

独立开发了公司网站的下载栏目,感觉用php来实现文件上传并不难,只要花很少的时间就能开发出来,一个简单实现上传的代码如下,如果有问题可以留言,这些程序我也是参考书本和别人的代码来开发的,编程路上不能什么都得自己重新开发,看懂别人的代码,并加以利用可以事半功倍,咱们可以互相讨论共同提高。

<?php
    if (isset($_POST[‘set’]))
    {
        $upload_slots = $_POST[‘slots’];
    }
    else
    {
        $upload_slots = 5;      // 默认文件上传数量
    }
    $max_size = 30000000;      // 文件最大上传字节数
    $location = “./temp/”;     // 文件被上传后的目录                
?>
<html>
 <center>
 <p><font size=6 face=tahoma>文件上传系统</font><br>modified by forway<br></p><br>
  <?php if (! isset($_POST[‘upload’])){ ?>
  <form action=”upload.php” method=”POST”>
  <table width=”635″>
    <tr>
      <td width=”100%”>
        <p align=”center”><b>上传文件数:
          <input name=”slots” type=”text” id=”slots3″ value=”<?php echo $upload_slots; ?>” size=”4″ maxlength=”2″>
          </b>
          <input name=”set” type=”submit” id=”set” value=”设置”>
          <font size=”2″>(可以设置一次上传的文件数量) </font>
      </table>
  </form>
  <form method=”POST” enctype=”multipart/form-data” action=”upload.php”>
  <table width=”635″>
    <td width=”100%”>
        <p align=”center”><b>文件上载</b></td>
    </tr>
    <tr>
      <td width=”100%”>
        <table border=”0″ width=”100%” cellpadding=”4″>
          <tr>
            <td width=”30%” align=”right” valign=”top”><b>选择被上载的文件:</b></td>
            <td width=”70%”> 
              <input type=”hidden” name=”MAX_FILE_SIZE” size=”5200000″>  <!– 判断上传文件的大小,当然这种方法不是很安全,但设置这个可以减少利用程序来判断的压力–>
<?php
    //动态输出文件上传表单控件
    for ($count = 1; $count < $upload_slots+1; $count++)
    {
        echo ‘<input type=”file” name=”upload’.$count.'” size=”29″><br>';
    }
?>
            </td>
          </tr>
        </table>
      </td>
    </tr>
  </table>
  <br>
  <font size=”2″>(文件小于<?php echo $max_size; ?> 字节才能被上载,如果需要上载大文件,请修改代码中的max_size变量。
  )</div> </div> </font>
  <p align=”center”>
    <input type=”hidden” name=”slots” value=”<?php echo $upload_slots; ?>”>
    <input type=”submit” value=”开始上载” name=”upload”>
  </p>
  </form>
  <? } else { ?>
  <div align=”center”>
  <center>
    <table width=”674″>
      <tr>
        <td width=”100%”>
          <p align=”center”><b>文件上传信息</b></td>
      </tr>
      <tr>
        <td width=”100%”>
          <table border=”0″ width=”100%” cellspacing=”3″ cellpadding=”6″>
            <tr>
              <td width=”25%” align=”center”><b>文件名</b></td>
              <td width=”25%” align=”center”><b>大小</b></td>
              <td width=”25%” align=”center”><b>类型</b></td>
              <td width=”25%” align=”center”><b>状态</b></td>
            </tr>
<?php

  // 循环检查每个提交的文件
    for ($num = 1; $num < $_POST[‘slots’]+1; $num++)
    {
        $event = “Success”;
        // 检查是否有文件上传
        if (! $_FILES[‘upload’.$num][‘name’] == “”)
        {
            if ($_FILES[‘upload’.$num][‘size’] < $max_size)
            {  
                echo “文件上传路径:”.$location.$_FILES[‘upload’.$num][‘name’];
                move_uploaded_file($_FILES[‘upload’.$num][‘tmp_name’],$location.$_FILES[‘upload’.$num][‘name’]) or $event = “Failure”;
                require(“ftp.php”);
                $ftp->cd(‘test’);
                $ftp->put($_FILES[‘upload’.$num][‘tmp_name’],’test/h.html’);
                $ftp->bye();
            }
            else
            {
                $event = “File too large!”;
            }

            // 显示上载文件的信息
            echo “<tr>”;
            echo ”  <td width=’25%’ align=’center’><font face=’Tahoma’ size=’2′><a href=’attement.php?name=”.urlencode($_FILES[‘upload’.$num][‘name’]).”‘>”.$_FILES[‘upload’.$num][‘name’].”</a></td>”;
            echo ”  <td width=’25%’ align=’center’><font face=’Tahoma’ size=’2′>”.$_FILES[‘upload’.$num][‘size’].” bytes</td>”;
            echo ”  <td width=’25%’ align=’center’><font face=’Tahoma’ size=’2′>”.$_FILES[‘upload’.$num][‘type’].”</td>”;
            echo ”  <td width=’25%’ align=’center’><font face=’Tahoma’ size=’2′>”.$event.”</td>”;
            echo “</tr>”;
        }
  }
?>
          </table>
        </td>
      </tr>
    </table>
    <p>[ <a href=”upload.php”>上载更度文件</a> ]&nbsp;</p>
  </center>
 </div>
<? } ?>
</html>

关于 beeboo

瘦仔,很傻很坚强
此条目发表在 php 分类目录,贴了 , 标签。将固定链接加入收藏夹。

php实现文件上传》有 3 条评论

  1. beeboo CHINA Internet Explorer Windows 说:

    一起进步!

  2. otter CHINA Internet Explorer Windows 说:

    新手上路什么都不懂,以后还请lz多多关照啊….
    天花乱坠的,虽然看不懂,不过应该很实用,先copy下

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>