好得很程序员自学网
  • 首页
  • 后端语言
    • 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框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

php图片实时上传 php实现上传图片功能

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

本文目录一览: 1、 php 图片上传 2、 php上传图片文件常用的几个方法 3、 怎样用php实现上传图片到数据库 4、 PHP上传图片怎么做? 5、 PHP实现上传图片到数据库并显示输出的方法 php 图片上传

首先 他们是从file空间那里取得的值。

然后判断参数,具体如下:

$_files主要用在当需要上传二进制文件的地方,录入上传一个abc.mp3文件,则服务器端需要获得该文件的相关信息,则通过变量$_files来取得。

$_FILES['userfile']['name']

客户端机器文件的原名称。

$_FILES['userfile']['type']

文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。

$_FILES['userfile']['size']

已上传文件的大小,单位为字节。

$_FILES['userfile']['tmp_name']

文件被上传后在服务端储存的临时文件名。

$_FILES['userfile']['error']

和该文件上传相关的错误代码。['error'] 是在 PHP 4.2.0 版本中增加的。

注: 在 PHP 4.1.0 版本以前该数组的名称为 $HTTP_POST_FILES,它并不像 $_FILES 一样是自动全局变量。PHP 3 不支持 $HTTP_POST_FILES 数组。

如果表单中没有选择上传的文件,则 PHP 变量 $_FILES['userfile']['size'] 的值将为 0,$_FILES['userfile']['tmp_name'] 将为 none。

php上传图片文件常用的几个方法

你好,要先建立一个html代码

<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>

然后创建upload_file文件用$_FILE判断文件,下面是判断文件的具体信息

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

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

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

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

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

希望对你有帮助!

怎样用php实现上传图片到数据库

php实现上传图片保存到数据库的方法。具体分析如下:

php 上传图片,一般都使用move_uploaded_file方法保存在服务器上。但如果一个网站有多台服务器,就需要把图片发布到所有的服务器上才能正常使用(使用图片服务器的除外)

如果把图片数据保存到数据库中,多台服务器间可以实现文件共享,节省空间。

首先图片文件是二进制数据,所以需要把二进制数据保存在mysql数据库。

mysql数据库提供了BLOB类型用于存储大量数据,BLOB是一个二进制对象,能容纳不同大小的数据。

BLOB类型有以下四种,除存储的最大信息量不同外,其他都是一样的。可根据需要使用不同的类型。

TinyBlob       最大 255B

Blob              最大 65K

MediumBlob  最大 16M

LongBlob      最大 4G

数据表photo,用于保存图片数据,结构如下:

CREATE TABLE `photo` (  

  `id` int(10) unsigned NOT NULL auto_increment,  

  `type` varchar(100) NOT NULL,  

  `binarydata` mediumblob NOT NULL,  

  PRIMARY KEY  (`id`)  

) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

upload_image_todb.php代码如下:

<?php  

// 连接数据库  

$conn=@mysql_connect("localhost","root","")  or die(mysql_error());  

@mysql_select_db('demo',$conn) or die(mysql_error()); // 判断action  

$action = isset($_REQUEST['action'])? $_REQUEST['action'] : ''; 

// 上传图片  

if($action=='add'){  

    $image = mysql_escape_string(file_get_contents($_FILES['photo']['tmp_name']));  

    $type = $_FILES['photo']['type'];  

    $sqlstr = "insert into photo(type,binarydata) values('".$type."','".$image."')";  

    @mysql_query($sqlstr) or die(mysql_error());  

    header('location:upload_image_todb.php');  

    exit();  

// 显示图片  

}elseif($action=='show'){  

    $id = isset($_GET['id'])? intval($_GET['id']) : 0;  

    $sqlstr = "select * from photo where id=$id";  

    $query = mysql_query($sqlstr) or die(mysql_error());  

    $thread = mysql_fetch_assoc($query);  

    if($thread){  

        header('content-type:'.$thread['type']);  

        echo $thread['binarydata'];  

        exit();  

    }  

}else{  

// 显示图片列表及上传表单  

?>  

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">  

<html>  

 <head>  

  <meta http-equiv="content-type" content="text/html; charset=utf-8">  

  <title> upload image to db demo </title>  

 </head>  

  

 <body>  

  <form name="form1" method="post" action="upload_image_todb.php" enctype="multipart/form-data">  

  <p>图片:<input type="file" name="photo"></p>  

  <p><input type="hidden" name="action" value="add"><input type="submit" name="b1" value="提交"></p>  

  </form>  

  

<?php  

    $sqlstr = "select * from photo order by id desc";  

    $query = mysql_query($sqlstr) or die(mysql_error());  

    $result = array();  

    while($thread=mysql_fetch_assoc($query)){  

        $result[] = $thread;  

    }  

    foreach($result as $val){  

        echo '<p><img 

src="/data/upload/help/202303/13/97c37747236a6e3b299bd52fc4c622a1.php?action=showid='.$val['id'].'t='.time().'"

 width="150"></p>';  

    }  

?>  

</body>  

</html>  

<?php  

}  

?>

程序运行截图和数据库截图:

PHP上传图片怎么做?

上传类,保存文件名称为 uppoo.php:

<?php

class upphoto{

public $previewsize=0.125 ; //预览图片比例

public $preview=0; //是否生成预览,是为1,否为0

public $datetime; //随机数

public $ph_name; //上传图片文件名

public $ph_tmp_name; //图片临时文件名

public $ph_path="./userimg/"; //上传文件存放路径

public $ph_type; //图片类型

public $ph_size; //图片大小

public $imgsize; //上传图片尺寸,用于判断显示比例

public $al_ph_type=array('image/jpg','image/jpeg','image/png','image/pjpeg','image/gif','image/bmp','image/x-png'); //允许上传图片类型

public $al_ph_size=1000000; //允许上传文件大小

function __construct(){

$this->set_datatime();

}

function set_datatime(){

$this->datetime=date("YmdHis");

}

//获取文件类型

function get_ph_type($phtype){

$this->ph_type=$phtype;

}

//获取文件大小

function get_ph_size($phsize){

$this->ph_size=$phsize."<br>";

}

//获取上传临时文件名

function get_ph_tmpname($tmp_name){

$this->ph_tmp_name=$tmp_name;

$this->imgsize=getimagesize($tmp_name);

}

//获取原文件名

function get_ph_name($phname){

$this->ph_name=$this->ph_path.$this->datetime.strrchr($phname,"."); //strrchr获取文件的点最后一次出现的位置

//$this->ph_name=$this->datetime.strrchr($phname,"."); //strrchr获取文件的点最后一次出现的位置

return $this->ph_name;

}

// 判断上传文件存放目录

function check_path(){

if(!file_exists($this->ph_path)){

mkdir($this->ph_path);

}

}

//判断上传文件是否超过允许大小

function check_size(){

if($this->ph_size>$this->al_ph_size){

$this->showerror("上传图片超过2000KB");

}

}

//判断文件类型

function check_type(){

if(!in_array($this->ph_type,$this->al_ph_type)){

$this->showerror("上传图片类型错误");

}

}

//上传图片

function up_photo(){

if(!move_uploaded_file($this->ph_tmp_name,$this->ph_name)){

$this->showerror("上传文件出错");

}

}

//图片预览

function showphoto(){

if($this->preview==1){

if($this->imgsize[0]>2000){

$this->imgsize[0]=$this->imgsize[0]*$this->previewsize;

$this->imgsize[1]=$this->imgsize[1]*$this->previewsize;

}

echo("<img src=\"{$this->ph_name}\" width=\"{$this->imgsize['0']}\" height=\"{$this->imgsize['1']}\">");

}

}

//错误提示

function showerror($errorstr){

echo "<script language=java script>alert('$errorstr');location='java script:history.go(-1);';</script>";

exit();

}

function save(){

$this->check_path();

$this->check_size();

$this->check_type();

$this->up_photo();

$this->showphoto();

}

}

?>

这里是使用的方法:

<?php

header("Content-Type:text/html; charset=utf-8");

//类的实例化:

include("uppoo.php");//类的文件名是upoop.php

$up=newupphoto;

$submit=$_POST['submit'];

if($submit=="上传"){

$up->get_ph_tmpname($_FILES['photo']['tmp_name']);

$up->get_ph_type($_FILES['photo']['type']);

$up->get_ph_size($_FILES['photo']['size']);

$up->get_ph_name($_FILES['photo']['name']);

$up->save();

}

?>

//上传图片的HTML:

<form action="upphoto.php?action=act" method="post" enctype="multipart/form-data">

图片来源:<input type="file" name="photo">

<input type="submit" name="submit" value="上传">

PHP实现上传图片到数据库并显示输出的方法

本文实例讲述了PHP实现上传图片到数据库并显示输出的方法。分享给大家供大家参考,具体如下:

1.

创建数据表

CREATE

TABLE

ccs_image

(

id

int(4)

unsigned

NOT

NULL

auto_increment,

description

varchar(250)

default

NULL,

bin_data

longblob,

filename

varchar(50)

default

NULL,

filesize

varchar(50)

default

NULL,

filetype

varchar(50)

default

NULL,

PRIMARY

KEY

(id)

)engine=myisam

DEFAULT

charset=utf8

2.

用于上传图片到服务器的页面

upimage.html

<!doctype

html>

<html

lang="en">

<head>

<meta

charset="UTF-8">

<meta

name="viewport"

content="width=device-width,

user-scalable=no,

initial-scale=1.0,

maximum-scale=1.0,

minimum-scale=1.0">

<meta

http-equiv="X-UA-Compatible"

content="ie=edge">

<style

type="text/css">

*{margin:

1%}

</style>

<title>Document</title>

</head>

<body>

<form

method="post"

action="upimage.php"

enctype="multipart/form-data">

描述:

<input

type="text"

name="form_description"

size="40">

<input

type="hidden"

name="MAX_FILE_SIZE"

value="1000000">

<br>

上传文件到数据库:

<input

type="file"

name="form_data"

size="40"><br>

<input

type="submit"

name="submit"

value="submit">

</form>

</body>

</html>

3.

处理图片上传的php

upimage.php

<?php

if

(isset($_POST['submit']))

{

$form_description

=

$_POST['form_description'];

$form_data_name

=

$_FILES['form_data']['name'];

$form_data_size

=

$_FILES['form_data']['size'];

$form_data_type

=

$_FILES['form_data']['type'];

$form_data

=

$_FILES['form_data']['tmp_name'];

$dsn

=

'mysql:dbname=test;host=localhost';

$pdo

=

new

PDO($dsn,

'root',

'root');

$data

=

addslashes(fread(fopen($form_data,

"r"),

filesize($form_data)));

//echo

"mysqlPicture=".$data;

$result

=

$pdo->query("INSERT

INTO

ccs_image

(description,bin_data,filename,filesize,filetype)

VALUES

('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')");

if

($result)

{

echo

"图片已存储到数据库";

}

else

{

echo

"请求失败,请重试";

注:图片是以二进制blob形式存进数据库的,像这样

4.

显示图片的php

getimage.php

<?php

$id

=2;//

$_GET['id'];

为简洁,直接将id写上了,正常应该是通过用户填入的id获取的

$dsn='mysql:dbname=test;host=localhost';

$pdo=new

PDO($dsn,'root','root');

$query

=

"select

bin_data,filetype

from

ccs_image

where

id=2";

$result

=

$pdo->query($query);

$result=$result->fetchAll(2);

//

var_dump($result);

$data

=

$result[0]['bin_data'];

$type

=

$result[0]['filetype'];

Header(

"Content-type:

$type");

echo

$data;

到浏览器查看已经上传的图片,看是否可以显示

是没有问题的,证明图片已经以二进制的形式存储到数据库了

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php+mysql数据库操作入门教程》、《php+mysqli数据库程序设计技巧总结》、《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

您可能感兴趣的文章:php实现上传图片保存到数据库的方法php上传图片存入数据库示例分享php上传图片到指定位置路径保存到数据库的具体实现php中如何将图片储存在数据库里php下将图片以二进制存入mysql数据库中并显示的实现代码php

从数据库提取二进制图片的处理代码php将图片保存入mysql数据库失败的解决方法php将图片文件转换成二进制输出的方法php图片的二进制转换实现方法

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

查看更多关于php图片实时上传 php实现上传图片功能的详细内容...

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

上一篇: php数组清空0 php清空数组的值

下一篇:php点击按钮跳出弹窗 php弹出对话框

相关资讯

最新资料更新

  • 1.php生成vcard php生成验证码
  • 2.php批量取中间 php批量删除数据
  • 3.php重命名不了 php 命名空间 通俗易懂
  • 4.php每个小时执行 php定时执行每天执行一次
  • 5.射洪php招聘 射洪平台公司招聘
  • 6.php生成缓存图片 php缓存机制有哪些
  • 7.php的token请求 php简单的token验证
  • 8.php数据分数排序 php实现积分排行榜
  • 9.php生成静态代码 php如何实现静态化
  • 10.链式作用域php php 链式调用
  • 11.php文字合到图片 php 图片合成
  • 12.包含苏州软世通php的词条
  • 13.phpsql添加记录 php数据表里怎么添加数据
  • 14.php棋牌小游戏 棋牌类小程序
  • 15.php浏览页面乱码 php页面字符出现乱码怎么解决
  • 16.抓取淘宝商品php 抓取淘宝商品风控
  • 17.php半角全角 全角半角字符切换
  • 18.php内核源码剖析 php源码使用教程
  • 19.php绘制健康码 php源码怎么搭建网站
  • 20.php网站界面代码 php网页

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

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