成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

php數(shù)據(jù)庫(kù)上傳圖片格式 php上傳圖片到數(shù)據(jù)庫(kù)

怎樣用php實(shí)現(xiàn)上傳圖片到數(shù)據(jù)庫(kù)

php實(shí)現(xiàn)上傳圖片保存到數(shù)據(jù)庫(kù)的方法。具體分析如下:

創(chuàng)新互聯(lián)自2013年創(chuàng)立以來(lái),是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元棲霞做網(wǎng)站,已為上家服務(wù),為棲霞各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792

php 上傳圖片,一般都使用move_uploaded_file方法保存在服務(wù)器上。但如果一個(gè)網(wǎng)站有多臺(tái)服務(wù)器,就需要把圖片發(fā)布到所有的服務(wù)器上才能正常使用(使用圖片服務(wù)器的除外)

如果把圖片數(shù)據(jù)保存到數(shù)據(jù)庫(kù)中,多臺(tái)服務(wù)器間可以實(shí)現(xiàn)文件共享,節(jié)省空間。

首先圖片文件是二進(jìn)制數(shù)據(jù),所以需要把二進(jìn)制數(shù)據(jù)保存在mysql數(shù)據(jù)庫(kù)。

mysql數(shù)據(jù)庫(kù)提供了BLOB類兄明型用于存儲(chǔ)大量數(shù)據(jù),BLOB是一個(gè)二進(jìn)制對(duì)象,能容納不同大小的數(shù)據(jù)。

BLOB類型有以下四種,除存儲(chǔ)的最大信息量不同外,其他都是一樣的??筛鶕?jù)需要使用不同的類型。

TinyBlob?????? 最大 255B

Blob????????????? 最大 65K

MediumBlob? 最大 16M

LongBlob????? 最大 4G

數(shù)據(jù)表photo,用于保存圖片數(shù)據(jù),結(jié)構(gòu)如羨緩告下:

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

//?連接數(shù)據(jù)庫(kù)??

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

pinput?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?'pimg?

src="upload_image_todb.php?action=showid='.$val['id'].'t='.time().'"

width="150"/p';??

}??

???

/body??

/html??

?php??

}??

?

程序運(yùn)行截圖和數(shù)據(jù)庫(kù)截圖:

如何通用PHP上傳圖片到MYSQL? - 技術(shù)問答

兩種純段辦法:1、以char或varchar類型保存圖片的上傳路徑;2、以blob格式啟物把圖片以二進(jìn)制保存在數(shù)據(jù)庫(kù)做旁譽(yù)里。建議用第一種至于用不用PDO,全憑喜好,以MySQL完全可以辦到。

如何使用PHP向數(shù)據(jù)庫(kù)中插入圖片,,并且使得圖片可以顯示在頁(yè)面上??

一般不向數(shù)據(jù)庫(kù)插入圖片 而是插入圖片的src 通過src找到圖片然后顯示。

?php

session_start();

//array數(shù)組中放圖片的格式

$uptypes = array("image/jpg","image/jpeg","image/png","image/pjpeg","image/gif","image/bmp","image/x-png");

$files =$_FILES["uppic"];

if($files["size"]2097152){ //圖片大小判斷耐慎圓

echo "上傳圖片不能大于2M";

echo "meta http-equiv='REFRESH' CONTENT='1;URL=pic.php'";

exit;

}

$ftype =$files["type"];

if(!in_array($ftype,$uptypes)){ //圖片格式判斷

echo "上傳的圖片文件格式不正確";

echo "meta http-equiv='REFRESH' CONTENT='1;URL=pic.php'";

}

$fname = $files["tmp_name"]; //在服務(wù)器臨時(shí)存儲(chǔ)名稱

$image_info = getimagesize($fname);

$name = $files["name"];

$str_name = pathinfo($name); //以數(shù)組的形式返回文件路勁的信息

$extname = strtolower($str_name["extension"]); //把字符串改為小寫 extensiorn擴(kuò)展名

$upload_dir = "upload/"; //upload文件夾

$file_name = date("YmdHis").rand(1000,9999).".".$extname;

$str_file = $upload_dir.$file_name; //文件目錄

//存入數(shù)據(jù)庫(kù)

$con=mysql_connect("localhost","root","");

if(!$con){

die(("數(shù)據(jù)庫(kù)連接失敗").mysql_error());

}

mysql_select_db("mywork",$con);

$sql="update user set picpath='$str_file' where user_name='$username'"; //將圖片地址插入數(shù)據(jù)庫(kù)mywork

mysql_query($sql,$con);

mysql_close($con);

if(!file_exists($upload_dir)){

mkdir($upload_dir); //創(chuàng)建目錄 成功則返回true 失敗則返回flase

}

if(!move_uploaded_file($files["tmp_name"],$str_file)){ //將上傳的文件移動(dòng)到新的目錄 要移動(dòng)文件 和文件新目錄 成功則返回true

echo "圖片上傳失敗";

echo "meta http-equiv='REFRESH'昌塌 CONTENT='1;URL=插入失敗后希望跳轉(zhuǎn)的孝州頁(yè)面";

}

else{

//echo "img src=".$str_file."";

echo "圖片上傳成功";

echo "meta http-equiv='REFRESH' CONTENT='1;URL=插入成功希望挑戰(zhàn)的頁(yè)面";

}

網(wǎng)頁(yè)題目:php數(shù)據(jù)庫(kù)上傳圖片格式 php上傳圖片到數(shù)據(jù)庫(kù)
本文地址:http://jinyejixie.com/article18/ddpiedp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司網(wǎng)站維護(hù)、靜態(tài)網(wǎng)站、軟件開發(fā)搜索引擎優(yōu)化、移動(dòng)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司
庄河市| 封丘县| 游戏| 伽师县| 广汉市| 武强县| 河北省| 柞水县| 田阳县| 和顺县| 弥渡县| 诏安县| 克什克腾旗| 耿马| 岳阳市| 商都县| 湖口县| 靖远县| 沭阳县| 邓州市| 黔西县| 枣强县| 长岭县| 宁阳县| 海城市| 阜新| 黎城县| 农安县| 平湖市| 开原市| 新乐市| 宾川县| 邛崃市| 十堰市| 开封市| 庆云县| 昌黎县| 轮台县| 南川市| 右玉县| 长垣县|