?php
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:主機域名、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、濱湖網(wǎng)站維護、網(wǎng)站推廣。
//將圖片存進數(shù)據(jù)庫再讀出,注意存儲圖片的字段類型必須為blob
$user=’root’;
$password=’root’;
$db=’test’;
$connect=mysql_connect(‘localhost’,$user,$password);
mysql_set_charset(‘utf8′,$connect);
mysql_select_db($db);
$photo = “0x”.bin2hex(file_get_contents(“./test.jpg”));
$sql=”INSERT INTO `test`.`test` (`photo`) VALUES ($photo);”;//$photo不需要用引號,切記
mysql_query($sql);
//$result=mysql_query(“SELECT *
//FROM `test`
//LIMIT 0 , 30〃);
//$img=mysql_fetch_array($result);
//echo $img['photo'];
?
請問你的客戶端是將數(shù)據(jù)流編碼了之后傳遞的么?
客戶端可以直接使用流上傳,不需要進行編碼,然后php獲取后直接保存就可以了,如:
$byte = file_get_contents('php://input');
file_put_contents($filename,$byte);
這樣客戶端不用進行處理,直接向服務(wù)器端寫入數(shù)據(jù)流就可以了。
網(wǎng)頁文件上傳實際上在表單提交的時候,如果上傳沒有問題,文件已經(jīng)上傳到服務(wù)器的臨時文件夾了。
在php中,有文件上傳,那么php服務(wù)器端可以接收到請求參數(shù) $_FILES,在 $_FILES數(shù)組中讀取到上傳文件的form表單名,然后在讀取的數(shù)組中可以獲取上傳文件的源文件,使用 fopen()函數(shù)就可以獲取文件的字節(jié)流了。
具體來點代碼看看吧:(假定上傳文件的表單名為 “formname”)
if($_FILES isset($_FILES["formname"])){
//獲取上傳的文件的屬性數(shù)組
$_fileinfo = $_FILES["formname"];
//獲取上傳文件的原文件名
$_filename = $_fileinfo["name"];
//獲取上傳文件的大小
$_filesize = $_fileinfo["size"];
//獲取上傳文件的臨時文件名(長文件名)
$_filesource = $_fileinfo["tmp_name"];
//以讀寫方式打開文件,并將資源綁定到一個流上
$_filestream = fopen($_filesource,"ab");
//實現(xiàn)上傳文件,其實質(zhì)是把臨時文件移動到制定的保存文件的位置
$_newfilename = "../mypath/filename.exp"; //自定義文件名,包含路徑,可以是相對路徑
move_uploaded_file($_filesource, $_newfilename);
}
js無法讀取php返回的二進制數(shù)據(jù)并轉(zhuǎn)成圖片顯示的,除非數(shù)據(jù)庫保存的是圖片地址,或者php端把二進制數(shù)據(jù)通過file_put_contents("*.png");再返回地址顯示
當前文章:php獲取圖片數(shù)據(jù)流 php獲取圖片二進制文件流
本文來源:http://muchs.cn/article0/dohsioo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、商城網(wǎng)站、網(wǎng)站改版、軟件開發(fā)、企業(yè)網(wǎng)站制作、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)