PHP部分--文件上传、客户端和服务器端加限制、抓取错误信息、完整步骤
html页面
- <!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>
- <form action="shangchuan.php" method="post" enctype="multipart/form-data">
- <input type="file" name="file" />
- <input type="submit" value="上传" />
- </form>
- </body>
- </html>
php处理页面
- <?php
- if($_FILES["file"]["error"])
- {
- echo $_FILES["file"]["error"];
- }
- else
- {
- //控制上传文件的类型,大小
- if(($_FILES["file"]["type"]=="image/jpeg" || $_FILES["file"]["type"]=="image/png") && $_FILES["file"]["size"]<1024000)
- {
- //找到文件存放的位置
- $filename = "./file/".date("YmdHis").$_FILES["file"]["name"];
- //转换编码格式
- $filename = iconv("UTF-8","gb2312",$filename);
- //判断文件是否存在
- if(file_exists($filename))
- {
- echo "该文件已存在!";
- }
- else
- {
- //保存文件
- move_uploaded_file($_FILES["file"]["tmp_name"],$filename);
- }
- }
- else
- {
- echo "文件类型不正确!";
- }
- }
把图片路径存入数据库(在上传成功下面调用数据库存入)
- <?php
- include("./gongju/DBDA.class.php");
- if($_FILES["file"]["error"])
- {
- echo $_FILES["file"]["error"];
- }
- else
- {
- //控制上传文件的类型,大小
- if(($_FILES["file"]["type"]=="image/jpeg" || $_FILES["file"]["type"]=="image/png") && $_FILES["file"]["size"]<1024000)
- {
- //找到文件存放的位置
- $filename = "./file/".date("YmdHis").$_FILES["file"]["name"];
- //转换编码格式
- $filename = iconv("UTF-8","gb2312",$filename);
- //判断文件是否存在
- if(file_exists($filename))
- {
- echo "该文件已存在!";
- }
- else
- {
- //保存文件
- move_uploaded_file($_FILES["file"]["tmp_name"],$filename);
- $db=new DBDA();
- $sql="insert into image values('','{$filename}')";
- if($db->Query($sql,0))
- {
- echo "数据插入数据库";
- }
- else
- {
- echo "数据未插入数据库";
- };
- }
- }
- else
- {
- echo "文件类型不正确!";
- }
- }
从数据库中调用图片路径,并读取图片
- <?php
- include("./gongju/DBDA.class.php");
- $db=new DBDA();
- $sql="select img from image where ids=1";
- $lujing=$db->StrQuery($sql);
- echo $lujing;
- echo "<img src='{$lujing}'/>";
- ?>
PHP部分--文件上传、客户端和服务器端加限制、抓取错误信息、完整步骤的更多相关文章
- php文件上传客户端限制和服务器端限制
客户端限制 1,通过表单隐藏域限制文件上传文件的最大值<input type='hidden' name='MAX_FILE_SIZE' VALUE='字节数' />通过accept属性限 ...
- 文件上传——客户端检测绕过(JavaScript检测)(一)
前言 通常再一个web程序中,一般会存在登陆注册功能,登陆后一般会有上传头像等功能,如果上传验证不严格就可能造成攻击者直接上传木马,进而控制整个web业务控制权.下面通过实例,如果程序只进行了客户端J ...
- 鸿蒙的js开发部模式18:鸿蒙的文件上传到python服务器端
1.首先鸿蒙的js文件上传,设置目录路径为: 构建路径在工程主目录下: 该目录的说明见下面描述: 视图构建如下: 界面代码: <div class="container"&g ...
- 2013第38周日Java文件上传下载收集思考
2013第38周日Java文件上传&下载收集思考 感觉文件上传及下载操作很常用,之前简单搜集过一些东西,没有及时学习总结,现在基本没啥印象了,今天就再次学习下,记录下自己目前知识背景下对该类问 ...
- JavaWeb 文件 上传 下载
文件上传下载对于一个网站来说,重要性不言而喻.今天来分享一个JavaWeb方式实现的文件上传下载的小例子. 项目依赖 项目目录 工作流程 文件上传 表单处的设置 服务器端 上传功能的实现 upload ...
- Java Web(十一) 文件上传与下载
文件上传 上传的准备工作 表单method必须为post 提供file组件 设置form标签的enctype属性为multipart/form-data,如果没有设置enctype属性,浏览器是无法将 ...
- JavaWeb 文件上传下载
1. 文件上传下载概述 1.1. 什么是文件上传下载 所谓文件上传下载就是将本地文件上传到服务器端,从服务器端下载文件到本地的过程.例如目前网站需要上传头像.上传下载图片或网盘等功能都是利用文件上传下 ...
- 使用 ServerSocket 进行文件上传,以及用Tomcat启动ServerSocket时,会卡死解决
服务器端代码 import java.io.BufferedOutputStream; import java.io.FileOutputStream; import java.io.IOExcept ...
- 4GB以上超大文件上传和断点续传服务器的实现
随着视频网站和大数据应用的普及,特别是高清视频和4K视频应用的到来,超大文件上传已经成为了日常的基础应用需求. 但是在很多情况下,平台运营方并没有大文件上传和断点续传的开发经验,往往在网上找一些简单的 ...
- 转载:JavaWeb 文件上传下载
转自:https://www.cnblogs.com/aaron911/p/7797877.html 1. 文件上传下载概述 1.1. 什么是文件上传下载 所谓文件上传下载就是将本地文件上传到服务器端 ...
随机推荐
- linux下编译安装mysql5.5以上版本
安装cmake: tar zxvf cmake-2.8.4.tar.gz cd cmake-2.8.4 ./configure --prefix=/usr/local/cmake make & ...
- JavaEE——Intellij Idea 创建JavaWeb项目
原文:JavaEE--Intellij Idea 创建JavaWeb项目 折腾Tomcat折腾了两个晚上,第一个晚上怎么都进不了Tomcat的首页,第二个晚上进去了,但是新建的Web项目,在浏览器中运 ...
- appserv+win8
在win8系统安装appserv后,假设apache2服务不安装成功,在安装文件夹Apache2.2手动执行apache_servicefix.bat要么apache_serviceinstall.b ...
- Android从无知到有知——NO.4
因为我们做的是手机安全卫士,因此,我们需要一个地图定位功能,些相关的项目,也有一些教程.到百度官方下载了相关的jar包和API,但自己建项目的时候却不是那么顺利,bug不断,弄得心烦意乱,最后最终臣服 ...
- QtNetwork说明(两)使用QT实现360的ctrl+ctrl特征
头文字说明: <span style="font-size:18px;">#ifndef GOOGLESUGGEST_H #define GOOGLESUGGEST_H ...
- Plugin For KanColleViewer – Provissy Tools V1.0
これはKanColleViewerためのプラグインです,KanColleViewerの機能を拡張する. #介绍 / Introduction / 紹介这是一个KanColleViewer(俗称”提督很 ...
- c#线程的几种启动方法
一 启动普通线程 ThreadStart与ParameterizedThreadStart建立新线程 优缺点:简单,但难于管理,线程过多会影响系统的性能. 二 启动CLR线程池的工作者线程(普通线程和 ...
- 数据类型和typeof操作符
虽然学习js有一段时间了,但是对js的基础语法却是有些生疏.最近在看jquery源码,决定随带总结一些基础的语法知识.今天总结一下数据类型和typeof,这在写js的时候,是不得不知道的知识. 数据类 ...
- requirejs的config及optimizer r.js配置
1.怎么处理require.js这些不需要被合并的东西 所有appDir中的文件都会先copy到dir文件中,进行压缩,然后根据build.js中的配置进行相应的合并,包括img等:2.样式合并后原来 ...
- System.Net.Http 简介
System.Net.Http 简介 System.Net.Http 是微软推出的最新的 HTTP 应用程序的编程接口, 微软称之为“现代化的 HTTP 编程接口”, 主要提供如下内容: 1. 用户通 ...