先用php把數(shù)據(jù)庫中的圖片路徑讀取出來,然后把這個路徑嵌入到img元素的src中,就相當于把圖片的路徑轉(zhuǎn)化為圖片了。
我們提供的服務有:成都網(wǎng)站制作、網(wǎng)站設計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、關嶺ssl等。為上千多家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的關嶺網(wǎng)站制作公司
pChart是一個開源的圖表生成庫,主要涉及3個Class: pChart.class , pData.class , pCache.class ,可生成20多種簡單或復雜的圖表,支持PNG,JPG,GIF通用圖片格式。數(shù)據(jù)源可以來自于Database,CSV,當然也可以手寫。使用該程序PHP需要開啟GD服務,先來看看p
pChart是一個開源的圖表生成庫,主要涉及3個Class:,?,?,可生成20多種簡單或復雜的圖表,支持PNG,JPG,GIF通用圖片格式。數(shù)據(jù)源可以來自于Database,CSV,當然也可以手寫。使用該程序PHP需要開啟GD服務,先來看看pChart的工作流程:
?
主要分為三步:
* 讀取用于生成圖表數(shù)據(jù)(數(shù)據(jù)庫、文件)
* 設計圖表樣式(圓角、底色等)
* 制作標簽、題目、圖例并生成圖表
下面看一個簡單的柱狀圖表:
?
代碼如下:
?php?// Standard inclusionsinclude("pChart/pData.class");
include("pChart/pChart.class");
// Dataset definition?$DataSet?=?newpData;
//圖表數(shù)據(jù)?$DataSet-AddPoint(array(1,4,-3,2,-3,3,2,1,0,7,4),"Serie1");
$DataSet-AddPoint(array(3,3,-4,1,-2,2,1,0,-1,6,3),"Serie2");
$DataSet-AddPoint(array(4,1,2,-1,-4,-2,3,2,1,2,2),"Serie3");
$DataSet-AddAllSeries();
$DataSet-SetAbsciseLabelSerie();
//數(shù)據(jù)圖例?$DataSet-SetSerieName("Microsoft","Serie1");
$DataSet-SetSerieName("IBM","Serie2");
$DataSet-SetSerieName("Google","Serie3");
// Initialise the graph?$Test?=?newpChart(700,230);
//設置圖表尺寸、樣式?$Test-setFontProperties("Fonts/tahoma.ttf",8);
$Test-setGraphArea(50,30,680,200);
$Test-drawFilledRoundedRectangle(7,7,693,223,5,240,240,240);
$Test-drawRoundedRectangle(5,5,695,225,5,230,230,230);
$Test-drawGraphArea(255,255,255,TRUE);
$Test-drawScale($DataSet-GetData(),$DataSet-GetDataDescription(),SCALE_NORMAL,150,150,150,TRUE,0,2,TRUE);
$Test-drawGrid(4,TRUE,230,230,230,50);
// Draw the 0 line?$Test-setFontProperties("Fonts/MankSans.ttf",6);
$Test-drawTreshold(0,143,55,72,TRUE,TRUE);
// Draw the bar graph //柱狀圖要使用drawBarGraph()?$Test-drawBarGraph($DataSet-GetData(),$DataSet-GetDataDescription(),TRUE,80);
// Finish the graph //制作圖例、標題、字體等屬性?$Test-setFontProperties("Fonts/MankSans.ttf",10);
$Test-drawLegend(596,150,$DataSet-GetDataDescription(),255,255,255);
$Test-setFontProperties("Fonts/MankSans.ttf",10);
$Test-drawTitle(50,22,"Example",50,50,50,585);
//生成圖表?$imageFile?="example12.png";
$Test-Render($imageFile);
echo?'img src="'.$imageFile.'"'
?php
//將圖片存進數(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'];
?
php是采用二進制形式存儲圖片及讀取顯示的,首先通過代碼創(chuàng)建數(shù)據(jù)表,然后上傳圖片服務器再通過瀏覽器顯示,具體編程代碼舉例:
1、首先需要創(chuàng)建數(shù)據(jù)表,具體代碼如下圖所示。
2、然后寫上傳圖片到服務器的頁面 upimage.html用來將圖片上傳數(shù)據(jù)庫,如下圖所示代碼。
3、處理圖片上傳的php upimage.php文件,如下圖所示圖片已儲存到數(shù)據(jù)庫。
4、顯示圖片的php getimage.php文件,為了看一下效果提前把ID寫入代碼。
5、預覽網(wǎng)站從數(shù)據(jù)庫中提取了圖片,并顯示到頁面上。