首页数据库php上传图片到数据库 php把图片上传到数据库并显示

php上传图片到数据库 php把图片上传到数据库并显示

编程之家2023-10-2098次浏览

大家好,感谢邀请,今天来为大家分享一下php上传图片到数据库的问题,以及和php把图片上传到数据库并显示的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!

php上传图片到数据库 php把图片上传到数据库并显示

php把图片上传到数据库并显示

blob类型

<?php

/*******************************************************

**文件名:upload_file.php

** Copyright@ 2009

**创建人:tabor

php上传图片到数据库 php把图片上传到数据库并显示

**日期:2009年7月24日 8:00

**修改人:

**日期:

**文件上传操作以及对图片文件的处理

**版本:

********************************************************/

php上传图片到数据库 php把图片上传到数据库并显示

class upload_file{

//保存的文件名

public$file_name;

//系统中上传文件的临时存放路径

public$file_tmp_name;

//文件大小

public$file_size;

//完整的文件类型

public$full_file_type;

//文件类型

public$file_type;

//文件是否覆盖

public$override= 1;

//文件的保存路径

public$file_save_path='';

//上传文件大小的最大值单位是字节 2M

public public$file_max_size= 210000000;

//public public$file_max_size= 102400;

//构造函数

function __construct($file_name='',$file_tmp_name='',$full_file_type='',$file_size='',$file_save_path=''){

$this->file_name=$file_name;

$this->file_tmp_name=$file_tmp_name;

$this->full_file_type=$full_file_type;

$this->file_size=$file_size;

$this->file_save_path=$file_save_path;

}

//取得文件的后缀名,即文件类型

function get_file_type(){

$type_array= explode('.',$this->file_name);

return$type_array[count($type_array)-1];

}

//判断文件的大小

function check_size(){

if($this->file_size>$this->file_max_size){

return false;

}

return true;

}

//取得文件的大小

function get_size(){

return intval($this->file_size/1024);

}

//上传图片格式 jpg,png,gif,pjpeg

function check_upload_pic(){

$type=$this->get_file_type();

$type_array= array('jpg','png','gif','bmp');

foreach($type_array as$value){

if($value=$type){

return true;

}

return false;

}

}

//上传文件格式 zip rar

function check_upload_file(){

$type=$this->get_file_type();

$type_array= array('jpg','gif','bmp','png');

foreach($type_array as$value){

if($value==$type){

return true;

}

return false;

}

}

//判断文件是否存在

function check_exist(){

$file=$this->file_save_path.$this->file_name;

return file_exists($file);

}

//上传文件

function move_upfile(){

if(!$this->check_upload_pic()){

echo"ok1";

return false;

}

else{

if(!$this->check_size()){

echo"ok2";

return false;

}

else{

// if($this->check_exist()){

// echo"该文件已存在";

// return false;

//}

// else{

$path=$this->file_save_path.$this->file_name;

if(move_uploaded_file($this->file_tmp_name,$path)){

return true;

}

else{

return false;

}

//}

}

}

}

//将上传的图片打水印

/**

*$water_pic_name将要被打水印的目标图片

*$water_word水印文字

*$path将来生成水印图片的存放路径

*/

function create_water_pic($water_word){

$type=$this->get_file_type();

$filename=$this->file_save_path.$this->file_name;

switch($type){

case'jpg':

header("content-type:image/jpeg");//定义输出图像的类型

$im= imagecreatefromjpeg($filename);//载入图片

break;

case'png':

header("content-type:image/png");

$im= imagecreatefrompng($filename);

break;

case'gif':

header("content-type:image/gif");

$im= imagecreatefromgif($filename);

break;

case'bmp':

header("content-type:image/xbm");//上传bmp格式存在问题

$im= imagecreatefromxbm($filename);//无法打水印

break;

default:{

echo"文件格式不符";

}

}

$textcolor= imagecolorallocate($im, 56, 73,136);//设定字体的颜色

$font="simhei.ttf";//定义字体

$word=$water_word;//水印字符

$x= imagesx($im);//获取图片的宽度

$y= imagesy($im);//获取文件的高度

$position_x=$x-80;

$position_y=$y-10;

$str= iconv('gbk','utf-8',$word);//将中文文字显示出来的编码过程

imagettftext($im, 20, 0,$position_x,$position_y,$textcolor,$font,$str);

//imagejpeg($im);//显示图片

$new=$this->file_save_path.'water'.$this->file_name;//生成新的文件名

switch($type){

case'jpg':

imagejpeg($im,$new);//生成jpg图像

break;

case'png':

imagepng($im,$new);//生成png图像

break;

case'gif':

imagegif($im,$new);//生成gif图像

break;

case'bmp':

imagexbm($im,$new);//生成bmp图像该格式的文件处理有问题

break;

default:{

echo"文件格式不符";

}

}

imagedestroy($im);//结束图形,释放内存空间*/

}

//生成缩略图

/**

*$pic图片名包括其扩展名,但不包括路径

*$width将来生成缩略图的宽度

*$height将来生成缩略图的高度

*$path生成缩略图的存放路径

*/

function create_thumbnail($width,$height){

$type=$this->get_file_type();

$filename=$this->file_save_path.$this->file_name;

$img= getimagesize($filename);

//print_r($img);

//die();

switch($img[2]){

case 1:

header("content-type:image/gif");//定义输出图像的类型

$im= imagecreatefromgif($filename);//载入图片

break;

case 2:

header("content-type:image/jpeg");

$im= imagecreatefromjpeg($filename);

break;

case 3:

header("content-type:image/png");

$im= imagecreatefrompng($filename);

break;

case 6:

header("content-type:image/xbm");//bmp格式存在问题

$im= imagecreatefromxbm($filename);//无法打水印

break;

default:{

echo"文件格式不符";

}

}

$thumb= imagecreatetruecolor($width,$height);//创建一个新的空白的面板

$color= imagecolorallocate($im, 200, 255, 100);//调色板

/*bool imagecopyresized( resource dst_image, resource src_image, int dst_x, int dst_y, int src_x, int src_y, int dst_w, int dst_h, int src_w, int src_h)

imagecopyresized()将一幅图像中的一块正方形区域拷贝到另一个图像中。dst_image和 src_image分别是目标图像和源图像的标识符。

*/

imagecopyresized($thumb,$im, 0, 0, 0, 0,$width,$height,$img[0],$img[1]);

//imagejpeg($thumb);

$thumb_path=$this->file_save_path."thumbnail/".$this->file_name;

switch($img[2]){

case 1:

imagejpeg($thumb,$thumb_path);

break;

case 2:

imagegif($thumb,$thumb_path);

break;

case 3:

imagepng($thumb,$thumb_path);

break;

case 6:

imagexbm($thumb,$thumb_path);

break;

default:{

echo"文件格式不符";

}

}

}

}

?>

前几天做的一个类,可以正常的使用,但还存在问题,仅供参考!忘对您有所帮助

php 上传图片 存入数据库

代码示例

upload.htm

<form enctype="multipart/form-data" action="upload.php" method="post">

<input type="hidden" name="max_file_size" value="100000">

文件名:<input name="filename"><br>

文件:<input name="userfile" type="file"><br>

<input type="submit" value="上传文件">

</form>

upload.php

<?

copy($userfile,$_POST['filename']);

echo$userfile."-用户上传到服务器上的文件临时存放的名称<br>";

echo$userfile_name."-在用户机器上该文件的原始名称<br>";

echo$userfile_size."-上传文件的实际字节数<br>";

echo$userfile_type."-如果用户的浏览器提供了这个信息的话,它表示mime的类型。例如image/gif<br>";

?>

<a rel="external nofollow" href="upload.htm">继续上传</a>

很简单,关键的只有一句copy就搞定了,存入数据库嘛,也很简单。

你都不说是啥子数据库。唉!其实光要代码在我以前的论坛中都是不允许的。

php中如何调用数据库中的图片并且显示到页面

php是采用二进制形式存储图片及读取显示的,首先通过代码创建数据表,然后上传图片服务器再通过浏览器显示,具体编程代码举例:

1、首先需要创建数据表,具体代码如下图所示。

2、然后写上传图片到服务器的页面 upimage.html用来将图片上传数据库,如下图所示代码。

3、处理图片上传的php upimage.php文件,如下图所示图片已储存到数据库。

4、显示图片的php getimage.php文件,为了看一下效果提前把ID写入代码。

5、预览网站从数据库中提取了图片,并显示到页面上。

关于本次php上传图片到数据库和php把图片上传到数据库并显示的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。

贵州数据库?贵州数据库建在什么地方(大数据库为什么在贵州)计算机主机名,主机名是什么