允许使用php上载文件

如果您希望允许网站访问者将文件上载到web服务器,则首先需要使用PHP创建一个HTML表单,允许用户指定要上载的文件。尽管本文后面将对所有代码进行汇编(以及一些关于安全性的警告),但这部分代码应该如下所示:...

01

2006年

html表单

如果您希望允许网站访问者将文件上载到web服务器,则首先需要使用PHP创建一个HTML表单,允许用户指定要上载的文件。尽管本文后面将对所有代码进行汇编(以及一些关于安全性的警告),但这部分代码应该如下所示:

请选择一个文件:

此表单将数据发送到web服务器的名为“upload.php”的文件中,该文件将在下一步中创建。

02

2006年

上传文件

实际的文件上传很简单。这段小代码上载HTML表单发送给它的文件。

$target=“upload/”$target=$target。basename($_文件['Upload']['name'])$ok=1;如果(move_uploaded_file($_FILES['uploaded']['tmp_name'],$target)){echo“文件”。basename($_FILES['uploadedfile']['name'])“已上载”;}或者{echo“抱歉,上载文件时出现问题。”;}?>

第一行$target=“upload/”;用于指定上载文件的文件夹。如第二行所示,此文件夹与upload.php文件相对。如果您的文件位于www.yours.com/files/upload.php,那么它会将文件上载到www.yours.com/files/upload/yourfile.gif。请确保您记得创建此文件夹。

然后,使用move_uploaded_file()将上载的文件移动到它所属的位置。这会将其放置在脚本开头指定的目录中。如果失败,用户将收到一条错误消息;否则,用户会被告知文件已上载。

03

2006年

限制文件大小

您可能希望限制上载到网站的文件大小。假设您没有更改HTML表单中的表单字段,因此它仍然被命名为“uploaded”-此代码检查文件的大小。如果文件大于350k,访问者将收到一个“文件太大”错误,代码将$ok设置为等于0。

如果($Upload_size>350000){echo“您的文件太大。”;$ok=0;}

通过将350000更改为不同的数字,可以将大小限制更改为更大或更小。如果您不关心文件大小,请省去这些行。

04

2006年

按类型限制文件

设置可以上载到站点的文件类型的限制和阻止上载某些文件类型都是明智的。

例如,此代码检查以确保访问者没有将PHP文件上载到您的站点。如果它是一个PHP文件,访问者将收到一条错误消息,$ok设置为0。

如果($upload_type==“text/php”){echo“无php文件”;$ok=0;}

在第二个示例中,仅允许将GIF文件上载到站点,在将$ok设置为0之前,所有其他类型都会出现错误。

如果(!($upload_type==“image/gif”){echo“您只能上载gif文件。”;$ok=0;}

您可以使用这两个示例来允许或拒绝任何特定的文件类型。

05

2006年

把它们放在一起

综合起来,你会发现:

$target=“upload/”$target=$target。basename($_文件['Upload']['name'])$ok=1//这是我们的大小条件If($upload_size>350000){echo“您的文件太大。”;$ok=0;}//这是我们的限制文件类型条件If($upload_type==“text/php”){echo“没有php文件”;$ok=0;}//这里我们检查$ok没有被错误设置为0如果($ok==0){echo“对不起,您的文件没有上载”}//如果一切正常,我们尝试上载itelse{如果(move_uploaded_file($_FILES['uploaded']['tmp_name'],$target)){echo“文件”。basename($_FILES['uploadedfile']['name'])“已上载”;}否则{echo“抱歉,上载文件时出现问题。”;}?>

在将此代码添加到网站之前,您需要了解下一屏幕上概述的安全含义。

06

2006年

关于安全的最后思考

如果您允许上传文件,那么您就可以让愿意卸载不需要的东西的人看到您自己。一个明智的预防措施是不允许上传任何可能包含恶意代码的PHP、HTML或CGI文件。这提供了一些安全性,但不确定是否有防火措施。

另一个预防措施是将上载文件夹设置为私有,以便只有您才能看到它。然后,当您看到上载时,您可以批准并移动它或删除它。根据您希望接收的文件数量,这可能非常耗时且不切实际。

此脚本最好保存在私人文件夹中。不要把它放在公众可以使用的地方,否则你可能会得到一个满是无用或潜在危险文件的服务器。如果你真的想让公众能够上传到你的服务器空间,写尽可能多的安全性。

  • 发表于 2021-09-12 11:34
  • 阅读 ( 104 )
  • 分类:编程

你可能感兴趣的文章

得到(get)和php中的post方法(post method in php)的区别

... 3. 什么是PHP中的POST方法 4. 并排比较-以表格形式在PHP中使用GET vs POST方法 5. 摘要 什么是php中的get方法(get method in php)? ***站能够存储、更新、检索和删除数据库中的数据。表单是包含供用户填写数据的字段的文档。这些表单数...

  • 发布于 2020-10-17 03:43
  • 阅读 ( 194 )

如何在一个树莓圆周率主持自己的网站

... 您可以使用此链接在InMotion主机上获得特别折扣。 ...

  • 发布于 2021-03-21 14:29
  • 阅读 ( 234 )

wordpress中特色缩略图和图像大小的完整指南

... WordPress中默认定义的三种大小可能不够,这就是为什么允许主题和插件添加自己的自定义大小。如果你愿意编辑你的主题文件,你也可以这样做。 ...

  • 发布于 2021-03-21 19:06
  • 阅读 ( 281 )

如何在windows pc上设置自己强大的wiki

...应该会看到EasyPHP出现在系统托盘中。系统托盘快捷方式允许您访问web服务器的管理部分。您可能要检查的第一件事是“管理”页面。本页概述了在web服务器上运行的内容。如果您看到此页面,这意味着您有一个工作的Web服务器...

  • 发布于 2021-04-12 21:30
  • 阅读 ( 151 )

通过电子邮件或网页将文件发送到dropbox

...件,AirDropper是一个很好的服务,可以弥补这一差距。它允许您通过电子邮件请求文件,然后让其他人通过Dropbox安全地发送给您。要开始,请浏览到AirDropper站点(下面的链接),然后单击开始。 这会将您发送到您的Dropbox帐户,...

  • 发布于 2021-04-13 05:22
  • 阅读 ( 156 )

使用cpanel向导在您的网站上手动安装wordpress

...安装WordPress吗?我们已经介绍了如何在个人博客或网站上使用WordPress,下面是如何在自己的网站上手动安装WordPress软件。 请注意:手动安装WordPress有点复杂,所以如果您的网站托管提供商提供安装程序脚本,我们建议您使用安...

  • 发布于 2021-04-13 13:32
  • 阅读 ( 167 )

如何使用owncloud在5分钟内建立自己的私有云存储服务

...先进的技术知识。OwnCloud的功能和Dropbox一样强大,但它也允许人们**和共享自己在OwnCloud上运行的应用程序,包括文本编辑器、任务列表等等。这意味着你可以从中得到更多,然后只要文件同步,如果你想。你会得到什么在它的...

  • 发布于 2021-05-24 04:15
  • 阅读 ( 214 )

如何推出你自己的可怕的拖放文件共享服务

...机默认安装PHP5)。对于自动设置,您还希望您的web主机允许您安排cron作业(我们将在后面解释它们的作用。)DreamHost是tl80读者的首选,满足所有这些要求。无论您选择哪一个主机,请确保您已设置了要用于启用FTP(或SFTP)的主...

  • 发布于 2021-05-27 02:53
  • 阅读 ( 183 )

德鲁帕尔6(drupal 6)和德鲁帕尔7(drupal 7)的区别

...l版本7于2011年1月推出。 Drupal是一种内容管理框架或CMS,允许用户从头开始构建网站,而不必理解编程语言。然而,Drupal有点复杂,需要花费大量的时间来理解系统的工作原理。它有一个陡峭的学习曲线,这意味着创建一个网站...

  • 发布于 2021-07-13 06:27
  • 阅读 ( 157 )

如何建立自己的网上商店

...详细信息(描述、名称等)。如果您有很多产品,请使用允许从Excel电子表格、CSV文件或其他分隔文本文件导入产品的附加组件,完全绕过web界面。您将需要下载附加组件(例如,Easy Populate&产品属性,它与一堆购物车系...

  • 发布于 2021-07-24 19:26
  • 阅读 ( 718 )
yxpw37454
yxpw37454

0 篇文章

相关推荐