導航:首頁 > 動漫圖片 > php怎麼圖片

php怎麼圖片

發布時間:2022-08-23 09:26:43

『壹』 怎樣用php實現上傳圖片到資料庫

php實現上傳圖片保存到資料庫的方法。具體分析如下:

php 上傳圖片,一般都使用move_uploaded_file方法保存在伺服器上。但如果一個網站有多台伺服器,就需要把圖片發布到所有的伺服器上才能正常使用(使用圖片伺服器的除外)
如果把圖片數據保存到資料庫中,多台伺服器間可以實現文件共享,節省空間。

首先圖片文件是二進制數據,所以需要把二進制數據保存在mysql資料庫。
mysql資料庫提供了BLOB類型用於存儲大量數據,BLOB是一個二進制對象,能容納不同大小的數據。

BLOB類型有以下四種,除存儲的最大信息量不同外,其他都是一樣的。可根據需要使用不同的類型。

TinyBlob 最大 255B
Blob 最大 65K
MediumBlob 最大 16M
LongBlob 最大 4G

數據表photo,用於保存圖片數據,結構如下:

CREATETABLE`photo`(
`id`int(10)unsignedNOTNULLauto_increment,
`type`varchar(100)NOTNULL,
`binarydata`mediumblobNOTNULL,
PRIMARYKEY(`id`)
)ENGINE=MyISAMDEFAULTCHARSET=latin1AUTO_INCREMENT=1;

upload_image_todb.php代碼如下:

<?php
//連接資料庫
$conn=@mysql_connect("localhost","root","")ordie(mysql_error());
@mysql_select_db('demo',$conn)ordie(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="insertintophoto(type,binarydata)values('".$type."','".$image."')";
@mysql_query($sqlstr)ordie(mysql_error());
header('location:upload_image_todb.php');
exit();
//顯示圖片
}elseif($action=='show'){
$id=isset($_GET['id'])?intval($_GET['id']):0;
$sqlstr="select*fromphotowhereid=$id";
$query=mysql_query($sqlstr)ordie(mysql_error());
$thread=mysql_fetch_assoc($query);
if($thread){
header('content-type:'.$thread['type']);
echo$thread['binarydata'];
exit();
}
}else{
//顯示圖片列表及上傳表單
?>
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="content-type"content="text/html;charset=utf-8">
<title>uploadimagetodbdemo</title>
</head>

<body>
<formname="form1"method="post"action="upload_image_todb.php"enctype="multipart/form-data">
<p>圖片:<inputtype="file"name="photo"></p>
<p><inputtype="hidden"name="action"value="add"><inputtype="submit"name="b1"value="提交"></p>
</form>

<?php
$sqlstr="select*fromphotoorderbyiddesc";
$query=mysql_query($sqlstr)ordie(mysql_error());
$result=array();
while($thread=mysql_fetch_assoc($query)){
$result[]=$thread;
}
foreach($resultas$val){
echo'<p><img
src="upload_image_todb.php?action=show&id='.$val['id'].'&t='.time().'"
width="150"></p>';
}
?>
</body>
</html>
<?php
}
?>

程序運行截圖和資料庫截圖:

『貳』 php 處理圖片問題

把你的郵箱留下來,我把代碼發給你
php生成圖片的思路如下:
1 創建一個大小和寬度自定義的png圖片 ,png的圖片背景黑色填充,透明度自己設計
$dirname=dirname(__FILE__)."/";
$picname="pic_1.jpg";
$pngpicname="pic_2.png";
$name="222.jpg";
$str="我要加的文字";
list($w,$h) = getimagesize($name);//獲得上傳圖片的長寬
$h=100;
$im = imagecreate($w,$h);
$backgroundColor = imagecolorallocatealpha($im,0,0,0,80);//背景通明圖片顏色及通明度
imagepng($im,$pngpicname,9);
imagedestroy($im);
2 對創建的png圖片加文字水印
將字元串分割成數組
$yy=50;//初始坐標
$xx=110;//初始坐標
$len=strlen($str);
$aa=msubstr($str,0,$len);//分割字元串
foreach($aa as $valuess){
$img = imagecreatefrompng($pngpicname);
$fontcolor = imagecolorallocate($img, 255, 255, 255);
$no =iconv('GB2312', 'UTF-8', $valuess);
imagettftext($img,$fontsize,0,$xx,$yy,$fontcolor,$dirname."simhei.ttf",$no);
imagepng($img,$pngpicname,9);
imagedestroy($img);
$xx=$xx+60;
}
3 把加水印的png圖片覆蓋到原圖上去
$image1 = imagecreatefrompng($pngpicname);
$image2 = imagecreatefromjpeg($name);
imageresized($image2,$image1,0,450,0,0,$w,$h,$w,$h); //拷貝
imagejpeg($image2 ,$picname,100);
imagedestroy($image1);
imagedestroy($image2 );
4輸出結果
<img src="<?=$picname;?>?t=<?=rand(1000,2000000);?>" />

『叄』 php 或 js 怎麼在圖片上添加文字和圖片,

需要擴展GD庫,例如:
<?php
$im = ImageCreate(70,350);
$white = ImageColorAllocate($im,255,255,255);
$black = ImageColorAllocate($im,0,0,0);
ImageTTFText($im,20,270,28,10,$black,'courbi','The courier TTF font');
header('Content-Type: image/png');
ImagePNG($im);
?>
會將文字豎排排列顯示。至於樓主想要的效果,建議樓主先去找一下這方面的資料研究一下吧。很容易的。

『肆』 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怎樣寫圖片這種格式的數據呢

一般插入資料庫的不是圖片,而是保存圖片的路徑。設置varchar類型。和插入其他欄位一樣。用sql語句中的insert語句。
insert into 數據表名(欄位名) values(要插入的);
顯示圖片 代碼如下:
<img src="<?php echo "資料庫中保存圖片路徑的值"?>" alt="picture"/>

『陸』 php怎麼做圖片識別

個人建議:樓主使用php進行圖片識別,不如使用ocr文字識別技術來進行圖片識別,這樣更方便,請看下面的方法:

  1. 首先,在電腦上安裝ocr文字識別軟體(迅捷ocr文字識別軟體)。

  2. 接著,運行ocr,選擇上面的『極速識別』功能。

  3. 然後,點擊左上角的『添加文件』,不需要識別的圖片添加進去。

  4. 最後,點擊操作下面的『開始識別』按鈕。

希望上方的方法可以幫助到你。

『柒』 php中插入圖片的代碼是什麼

php中插入圖片的代碼是什麼?

PHP插入圖片,實際還是輸出HTML代碼

比如:

echo '<img src='1.gir' width="100" height="100">';

還可以直接用PHP生成圖片顯示出來

php的gd庫可以生成多種圖像文件,如gif,png,jpg,wbmp,xpm等,下面來看一個生成正方形的文件。

<?php
$height = 300;
$width = 300;
//創建背景圖
$im = ImageCreateTrueColor($width, $height);
//分配顏色
$white = ImageColorAllocate ($im, 255, 255, 255);
$blue = ImageColorAllocate ($im, 0, 0, 64);
//繪制顏色至圖像中
ImageFill($im, 0, 0, $blue);
//繪制字元串:Hello,PHP
ImageString($im, 10, 100, 120, 'Hello,PHP', $white);
//輸出圖像,定義頭
Header ('Content-type: image/png');
//將圖像發送至瀏覽器
ImagePng($im);
//清除資源
ImageDestroy($im);
?>

『捌』 php中如何調用資料庫中的圖片並且顯示到頁面

php是採用二進制形式存儲圖片及讀取顯示的,首先通過代碼創建數據表,然後上傳圖片伺服器再通過瀏覽器顯示,具體編程代碼舉例:

1、首先需要創建數據表,具體代碼如下圖所示。

『玖』 PHP怎麼把圖片數據保存為jpg圖片到伺服器目錄

  1. 第一步:通過$_FILES獲取文件信息。

  2. 第二步:指定新文件名稱以及路徑,並賦值給一個變數。

  3. 第三步:通過move_uploaded_file上傳文件。

  4. 第四步:上傳成功後,將數值存入資料庫伺服器目錄即可。

1.conn.php


<?
$host="localhost";//資料庫伺服器名稱
$user="root";//用戶名
$pwd="1721";//密碼
$conn=mysql_connect($host,$user,$pwd);
mysql_query("SET
character_set_connection=gb2312,
character_set_results=gb2312,
character_set_client=binary",$conn);

if($conn==FALSE)
{
echo"<center>伺服器連接失敗!<br>請刷新後重試。</center>";
returntrue;
}
$databasename="database";//資料庫名稱

do
{
$con=mysql_select_db($databasename,$conn);
}while(!$con);

if($con==FALSE)
{
echo"<center>打開資料庫失敗!<br>請刷新後重試。</center>";
returntrue;
}

?>

2.upload.php


<?php
if($_GET['action']=="save"){
include_once('conn.php');
include_once('uploadclass.php');
$title=$_POST['title'];
$pic=$uploadfile;
if($title=="")
echo"<Script>window.alert('對不起!你輸入的信息不完整!');history.back()</Script>";
$sql="insertintoupload(title,pic)values('$title','$pic')";
$result=mysql_query($sql,$conn);
//echo"<Script>window.alert('信息添加成功');location.href='upload.php'</Script>";
}
?>
<html>
<head>
<title>文件上傳實例</title>
</head>
<body>
<formmethod="post"action="?action=save"enctype="multipart/form-data">
<tableborder=0cellspacing=0cellpadding=0align=centerwidth="100%">
<tr>
<tdwidth=55height=20align="center"></TD>
<tdheight="16">

<tablewidth="48%"height="93"border="0"cellpadding="0"cellspacing="0">
<tr>
<td>標題:</td>
<td><inputname="title"type="text"id="title"></td>
</tr>
<tr>
<td>文件:</td>
<td><label>
<inputname="file"type="file"value="瀏覽">
<inputtype="hidden"name="MAX_FILE_SIZE"value="2000000">
</label></td>
</tr>
<tr>
<td></td>
<td><inputtype="submit"value="上傳"name="upload"></td>
</tr>
</table></td>
</tr>
</table>
</form>

</body>
</html>

3.uploadclass.php

<?php
$uploaddir="upfiles/";//設置文件保存目錄注意包含/
$type=array("jpg","gif","bmp","jpeg","png");//設置允許上傳文件的類型
$patch="upload/";//程序所在路徑

//獲取文件後綴名函數
functionfileext($filename)
{
returnsubstr(strrchr($filename,'.'),1);
}
//生成隨機文件名函數
functionrandom($length)
{
$hash='CR-';
$chars='';
$max=strlen($chars)-1;
mt_srand((double)microtime()*1000000);
for($i=0;$i<$length;$i++)
{
$hash.=$chars[mt_rand(0,$max)];
}
return$hash;
}

$a=strtolower(fileext($_FILES['file']['name']));
//判斷文件類型
if(!in_array(strtolower(fileext($_FILES['file']['name'])),$type))
{
$text=implode(",",$type);
echo"您只能上傳以下類型文件:",$text,"<br>";
}
//生成目標文件的文件名
else{
$filename=explode(".",$_FILES['file']['name']);
do
{
$filename[0]=random(10);//設置隨機數長度
$name=implode(".",$filename);
//$name1=$name.".Mcncc";
$uploadfile=$uploaddir.$name;
}

while(file_exists($uploadfile));

if(move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile))
{
if(is_uploaded_file($_FILES['file']['tmp_name']))
{

echo"上傳失敗!";
}
else
{//輸出圖片預覽
echo"<center>您的文件已經上傳完畢上傳圖片預覽:</center><br><center><imgsrc='$uploadfile'></center>";
echo"<br><center><ahref='upload.htm'>繼續上傳</a></center>";
}
}

}
?>

『拾』 PHP怎麼顯示出圖片

不要用記事本直接編輯PHP文件,因為可能會存在bom頭信息,導致圖片不能正常顯示,你可以自行網路bom頭信息,建議使用編輯器notepad++,可以去除文件bom頭,圖片就會正常顯示

閱讀全文

與php怎麼圖片相關的資料

熱點內容
背著書包的女生背影圖片 瀏覽:36
動畫片人物圖片怎麼畫 瀏覽:205
卡通喬巴怎麼畫圖片 瀏覽:541
街拍小女孩高清圖片 瀏覽:316
紫薯方便麵高清圖片 瀏覽:262
可愛卡通女生頭像萌圖片 瀏覽:993
波浪卷發型長發圖片大全 瀏覽:370
word圖片不能用滑鼠拉大縮小 瀏覽:856
ps圖片中怎麼扣去不要的 瀏覽:495
女人衣服的圖片 瀏覽:653
學生男生帥氣圖片大全 瀏覽:966
圖案大全可愛簡單圖片 瀏覽:920
六年級手抄報圖片簡單 瀏覽:743
內扣長直發發型圖片 瀏覽:180
馬克筆畫畫男生動漫圖片 瀏覽:789
學校照片動漫圖片 瀏覽:189
好心情美女風景圖片 瀏覽:669
word文檔圖片裁剪摳圖 瀏覽:205
懷女孩孕婦圖片 瀏覽:862
簡單會議室圖片 瀏覽:751