好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>CMS系统>Dedecms
<tfoot draggable='sEl'></tfoot>

上传即用仅php 只允许上传jpg

很多站长朋友们都不太清楚上传即用仅php,今天小编就来给大家整理上传即用仅php,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 用PHP上传实现只上传图片并保持原文件名 2、 怎样用PHP实现文件上传 3、 php 文件上传问题 4、 微信小程序如何使用PHP实现文件上传 5、 php上传功能怎么实现点击浏览在打开文件之后直接上传? 用PHP上传实现只上传图片并保持原文件名

$face=$_FILES['face'];

if($face['size']<0){

    echo '上传文件为空';

    exit;

}

//判断文件格式

$arr=array('jpg','png','gif')

$arrs=explode('.',$face['name']);

$ext=$arrs[count($arrs)-1];

if(!in_array($ext,$arr)){

    echo '文件格式错误!';

    exit;

}

//判断上传大小

if($face['size']>307200){

    echo '文件大小已超出限制范围!';

    exit;

}

$dir='faces';//文件上传目录

$upload=copy($face['tmp_name'],$dir.'/'.$face['name']);

if($upload=false){

    echo '文件上传失败!';

    exit;

}

怎样用PHP实现文件上传

创建一个文件上传表单

允许用户从表单上传文件是非常有用的。

请看下面这个供上传文件的 HTML 表单:

<html>

<body>

<form action="upload_file.php" method="post"

enctype="multipart/form-data">

<label for="file">Filename:</label>

<input type="file" name="file" id="file" />

<br />

<input type="submit" name="submit" value="Submit" />

</form>

</body>

</html>

请留意如下有关此表单的信息:

<form> 标签的 enctype 属性规定了在提交表单时要使用哪种内容类型。在表单需要二进制数据时,比如文件内容,请使用 "multipart/form-data"。

<input> 标签的 type="file" 属性规定了应该把输入作为文件来处理。举例来说,当在浏览器中预览时,会看到输入框旁边有一个浏览按钮。

注释:允许用户上传文件是一个巨大的安全风险。请仅仅允许可信的用户执行文件上传操作。

创建上传脚本

"upload_file.php" 文件含有供上传文件的代码:

<?php

if ($_FILES["file"]["error"] > 0)

{

echo "Error: " . $_FILES["file"]["error"] . "<br />";

}

else

{

echo "Upload: " . $_FILES["file"]["name"] . "<br />";

echo "Type: " . $_FILES["file"]["type"] . "<br />";

echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";

echo "Stored in: " . $_FILES["file"]["tmp_name"];

}

?>

通过使用 PHP 的全局数组 $_FILES,你可以从客户计算机向远程服务器上传文件。

第一个参数是表单的 input name,第二个下标可以是 "name", "type", "size", "tmp_name" 或 "error"。就像这样:

$_FILES["file"]["name"] - 被上传文件的名称

$_FILES["file"]["type"] - 被上传文件的类型

$_FILES["file"]["size"] - 被上传文件的大小,以字节计

$_FILES["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称

$_FILES["file"]["error"] - 由文件上传导致的错误代码

这是一种非常简单文件上传方式。基于安全方面的考虑,您应当增加有关什么用户有权上传文件的限制。

上传限制

在这个脚本中,我们增加了对文件上传的限制。用户只能上传 .gif 或 .jpeg 文件,文件大小必须小于 20 kb:

<?php

if ((($_FILES["file"]["type"] == "image/gif")

|| ($_FILES["file"]["type"] == "image/jpeg")

|| ($_FILES["file"]["type"] == "image/pjpeg"))

($_FILES["file"]["size"] < 20000))

{

if ($_FILES["file"]["error"] > 0)

{

echo "Error: " . $_FILES["file"]["error"] . "<br />";

}

else

{

echo "Upload: " . $_FILES["file"]["name"] . "<br />";

echo "Type: " . $_FILES["file"]["type"] . "<br />";

echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";

echo "Stored in: " . $_FILES["file"]["tmp_name"];

}

}

else

{

echo "Invalid file";

}

?>

注释:对于 IE,识别 jpg 文件的类型必须是 pjpeg,对于 FireFox,必须是 jpeg。

保存被上传的文件

上面的例子在服务器的 PHP 临时文件夹创建了一个被上传文件的临时副本。

这个临时的复制文件会在脚本结束时消失。要保存被上传的文件,我们需要把它拷贝到另外的位置:

<?php

if ((($_FILES["file"]["type"] == "image/gif")

|| ($_FILES["file"]["type"] == "image/jpeg")

|| ($_FILES["file"]["type"] == "image/pjpeg"))

($_FILES["file"]["size"] < 20000))

{

if ($_FILES["file"]["error"] > 0)

{

echo "Return Code: " . $_FILES["file"]["error"] . "<br />";

}

else

{

echo "Upload: " . $_FILES["file"]["name"] . "<br />";

echo "Type: " . $_FILES["file"]["type"] . "<br />";

echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";

echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

if (file_exists("upload/" . $_FILES["file"]["name"]))

{

echo $_FILES["file"]["name"] . " already exists. ";

}

else

{

move_uploaded_file($_FILES["file"]["tmp_name"],

"upload/" . $_FILES["file"]["name"]);

echo "Stored in: " . "upload/" . $_FILES["file"]["name"];

}

}

}

else

{

echo "Invalid file";

}

?>

上面的脚本检测了是否已存在此文件,如果不存在,则把文件拷贝到指定的文件夹。

注释:这个例子把文件保存到了名为 "upload" 的新文件夹。

php 文件上传问题

找错,先看错误信息. 根据错误信息提示的行号进行找,. 如果不显示错误信息,请到php.ini查找display_error 是否处于开启状态.

如果确实是不报错的程序., 那么我建议进行一步步的打印

例如: $tmp_filename = $_FILES['myupload']['tmp_name'];

你打印print_r($tmp_filename); 大地有没有获取到这个文件

然后你再查这个:

if(!move_uploaded_file($tmp_filename,$url_this))

你打印move_uploaded_file($tmp_filename,$url_this)的时候,如果出错会返回False错误

函数说明:

move_uploaded_file

(PHP 4 >= 4.0.3, PHP 5)

move_uploaded_file -- 将上传的文件移动到新位置

说明

bool move_uploaded_file ( string filename, string destination )

本函数检查并确保由 filename 指定的文件是合法的上传文件(即通过 PHP 的 HTTP POST 上传机制所上传的)。如果文件合法,则将其移动为由 destination 指定的文件。

如果 filename 不是合法的上传文件,不会出现任何操作,move_uploaded_file() 将返回 FALSE。

如果 filename 是合法的上传文件,但出于某些原因无法移动,不会出现任何操作,move_uploaded_file() 将返回 FALSE。此外还会发出一条警告。

这种检查显得格外重要,如果上传的文件有可能会造成对用户或本系统的其他用户显示其内容的话。

微信小程序如何使用PHP实现文件上传

调用小程序文件上传api

服务器接收到微信post过来的文件之后,php处理代码和传统文件上传代码一样

php上传功能怎么实现点击浏览在打开文件之后直接上传?

我的博客《用最简单的例子实现jQuery图片即时上传》已经做了详细的介绍,请参考实现。

主要原理:

jQuery上传插件将<input type="file">的数据转至一个新生的form当中将其提交,

而表单的target指向新生的iframe,在iframe中做表单提交后的处理,

完成后iframe会重新加载并包含处理结果,通过iframe的load事件便可捕捉并获取处理结果,

回传至原表单所在的页面(feedback)中,实现jQuery即时上传的效果。

而在表单提交的时候,为了实现选择文件后即时提交表单,则使用了input标签的change事件,

只要选择了文件,input的值就会发生变化,此时就可以提交表单进行处理了。

关于上传即用仅php的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于上传即用仅php 只允许上传jpg的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did167278
更新时间:2023-03-28   阅读:35次

上一篇: php字符转成json php转string

下一篇:php面向对象建模 深入php面向对象模式与实践

相关资讯

最新资料更新

  • 1.DEDECMS显示英文日期时间的方法
  • 2.织梦DedeCMS各种自定义当前位置顺序的方法
  • 3.详解织梦标签{dede:freelist/}列表调用增加排序方式的代码
  • 4.dedecms 5.7 实现点击图片到下一页
  • 5.Dede实现文章列表隔行换背景色让显示内容有所区别
  • 6.dedecms的dedesql.class.php on line 489错误的解决方法
  • 7.DEDECMS在PHP5.4不能正常运行的解决方法
  • 8.Dedecms去掉URL中a目录的方法
  • 9.dedecms会员设置、互动设置的方法
  • 10.织梦上传服务器后数据连接失败问题的解决方法
  • 11.去掉dedecms友情链接中的LI标签的方法
  • 12.织梦DEDECMS友情链接出现内页与首页都在首页显示解决方法
  • 13.DedeCms自定义字段调用长度截取方法
  • 14.dedeCms批量修改文章发布时间的方法
  • 15.Dede后台验证码不显示解决方法详解(dedecms 5.7)
  • 16.dede:list调用body内容的实现方法(图文)
  • 17.完美织梦DeDeCMS 5.6 升级 5.7 SP1版解决方案
  • 18.DEDE登陆后台很慢的原因分析与解决方法
  • 19.DedeCMS新建模型字段中【附件样式】的修改方法
  • 20.详解织梦首页、列表页调用文章body内容的两种方法

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]