當前位置:首頁 » 文件管理 » php上傳圖片並顯示圖片

php上傳圖片並顯示圖片

發布時間: 2022-07-28 03:32:49

A. php中如何調用資料庫中的圖片並且顯示到頁面

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

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

B. php上傳文件(上傳後顯示圖片)

如果你能上傳成功得話下面得

upload.php
<?
include_once ('admin_global.php');
if(isset($_POST['upload'])){
$name=$_FILES["userfile"]["name"];
$updir="../common/images/";
//$uploadfile=$uploaddir.$_FILES['userfile']['name']; //新文件
$type=$_FILES["userfile"]["type"];
$size=$_FILES["userfile"]["size"];
if($name==""){echo"<script>alert('請先選擇要上傳的圖片文件!');window.history.back();</script>";}
$tmp_name=$_FILES["userfile"]["tmp_name"];
if($type!="image peg" && $type!="image/jpeg" && $type!="image/gif"){echo"<script>alert('上傳文件只可以是JPEG或GIF類型的!');window.history.back();</script>";exit;}
if(file_exists($updir.$name)){echo"<script>alert('伺服器上已有同名文件!');window.history.back();</script>";exit;}
if(move_uploaded_file($tmp_name,$updir.$name)){echo"<script>alert('圖片上傳完成!');</script>";}
echo"<script>window.location.href('admin_tu_add.php?n=$name');</script>";
//echo"$name";
}

?>

admin_tu_add.php
<img src="../common/images/<? echo $_GET['n']; ?>">

如果上傳不了得話就是你寫得上傳程序可能有問題

C. PHP做一個網頁 支持用戶上傳圖片並顯示的 如何實現

前台:
<form action="php_insertpic.php" method="post" enctype="multipart/form-data" >
<input type="file" name="myFile" id="myFile" />
</form>
後台:
$pic_data = $_FILES["myFile"]["tmp_name"];
$pic_size = $_FILES["myFile"]["size"];
$filepic = addslashes(fread(fopen($pic_data, "rb"), $pic_size ));
後面再加上插入資料庫的語句就可以了,如:"insert into pic(id,picture) values(1,$filepic)"
顯示圖片:
header("Content-type:image/jpeg");
連接資料庫
$result=mysql_query("select * from pic where id=1");
$myrow=mysql_fetch_array($result);
echo ($myrow["picture"]);

D. php如何實現將本地圖片(可多選)上傳到X文件夾中,並在當前頁面就能看到所有上傳到X文件夾中的圖片

這個不僅要php,還要javaScript配合,上傳後能在當前頁面看到只能是做個非同步上傳,然後返回圖片的地址顯示在頁面上,像你說的那種返回所有上傳的圖片要配合資料庫來使用,就是要記錄上傳的這些圖片的地址,然後進入頁面的時候查詢出來顯示,並且在上傳圖片成功之後要再查詢回來顯示,這些最好通過ajax非同步調用

E. php 如何實現圖片上傳前預覽,並且有多個圖片上傳和預覽

<form name="form4" id="form4" method="post" action="#"> <input type="file" name="file4" id="file4" ōnchange="preview4()" /> <img id="pic4" src="" alt="圖片在此顯示" width="120"/> </form> <scrīpt type="text/javascrīpt"> function preview4(){ var x = document.getElementById("file4"); var y = document.getElementById("pic4"); if(!x || !x.value || !y) return; var patn = /\.jpg$|\.jpeg$|\.gif$/i; if(patn.test(x.value)){ y.src = "file://localhost/" + x.value; } else{ alert("您選擇的似乎不是圖像文件。"); } } </scrīpt>

F. 如何使用php上傳圖片並顯示在頁面上

需要用到$_FILES這個你可以查手冊,然後自己寫個函數:

functionupload($file,$path='upload'){
//省略
}
你可以網上找些代碼,看看,然後自己用,或者自己試著寫寫。
演示代碼地址:

網址不讓打你可以上我網盤找下代碼。希望能幫助到你。

G. 簡單的PHP上傳圖片並且顯示的問題,

處理頁面的代碼:

$file = $_FILES['image']; //得到上傳文件的數組,包括文件大小,類型等數組元素
$url = "imgs/".$file['name']; //上傳後的圖片地址
if(move_uploaded_file($file['tmp_name'],$url)){ //將圖片上傳到指定路徑
//將$url存入資料庫,(如果路徑是固定的,也可以只把文件名存入資料庫,取數據的時候在代碼里加上路徑就好了)
……
}else{
echo "上傳失敗";
}
要顯示圖片就只要從資料庫里獲取指定圖片的路徑,然後顯示就可以了

H. php把圖片上傳到資料庫並顯示

blob類型
<?php
/*******************************************************
** 文件名:upload_file.php
** Copyright @ 2009
** 創建人:tabor
** 日期:2009年7月24日 8:00
** 修改人:
** 日期:
** 描述:文件上傳操作以及對圖片文件的處理
** 版本:
********************************************************/
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 imageresized ( 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 )
imageresized() 將一幅圖像中的一塊正方形區域拷貝到另一個圖像中。dst_image 和 src_image 分別是目標圖像和源圖像的標識符。
*/
imageresized($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 "文件格式不符";
}
}
}
}
?>

前幾天做的一個類,可以正常的使用,但還存在問題,僅供參考!忘對您有所幫助

I. PHP實現上傳圖片到資料庫並顯示輸出的方法

本文實例講述了PHP實現上傳圖片到資料庫並顯示輸出的方法。分享給大家供大家參考,具體如下:
1.
創建數據表
CREATE
TABLE
ccs_image
(
id
int(4)
unsigned
NOT
NULL
auto_increment,
description
varchar(250)
default
NULL,
bin_data
longblob,
filename
varchar(50)
default
NULL,
filesize
varchar(50)
default
NULL,
filetype
varchar(50)
default
NULL,
PRIMARY
KEY
(id)
)engine=myisam
DEFAULT
charset=utf8
2.
用於上傳圖片到伺服器的頁面
upimage.html
<!doctype
html>
<html
lang="en">
<head>
<meta
charset="UTF-8">
<meta
name="viewport"
content="width=device-width,
user-scalable=no,
initial-scale=1.0,
maximum-scale=1.0,
minimum-scale=1.0">
<meta
http-equiv="X-UA-Compatible"
content="ie=edge">
<style
type="text/css">
*{margin:
1%}
</style>
<title>Document</title>
</head>
<body>
<form
method="post"
action="upimage.php"
enctype="multipart/form-data">
描述:
<input
type="text"
name="form_description"
size="40">
<input
type="hidden"
name="MAX_FILE_SIZE"
value="1000000">
<br>
上傳文件到資料庫:
<input
type="file"
name="form_data"
size="40"><br>
<input
type="submit"
name="submit"
value="submit">
</form>
</body>
</html>
3.
處理圖片上傳的php
upimage.php
<?php
if
(isset($_POST['submit']))
{
$form_description
=
$_POST['form_description'];
$form_data_name
=
$_FILES['form_data']['name'];
$form_data_size
=
$_FILES['form_data']['size'];
$form_data_type
=
$_FILES['form_data']['type'];
$form_data
=
$_FILES['form_data']['tmp_name'];
$dsn
=
'mysql:dbname=test;host=localhost';
$pdo
=
new
PDO($dsn,
'root',
'root');
$data
=
addslashes(fread(fopen($form_data,
"r"),
filesize($form_data)));
//echo
"mysqlPicture=".$data;
$result
=
$pdo->query("INSERT
INTO
ccs_image
(description,bin_data,filename,filesize,filetype)
VALUES
('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')");
if
($result)
{
echo
"圖片已存儲到資料庫";
}
else
{
echo
"請求失敗,請重試";
注:圖片是以二進制blob形式存進資料庫的,像這樣
4.
顯示圖片的php
getimage.php
<?php
$id
=2;//
$_GET['id'];
為簡潔,直接將id寫上了,正常應該是通過用戶填入的id獲取的
$dsn='mysql:dbname=test;host=localhost';
$pdo=new
PDO($dsn,'root','root');
$query
=
"select
bin_data,filetype
from
ccs_image
where
id=2";
$result
=
$pdo->query($query);
$result=$result->fetchAll(2);
//
var_mp($result);
$data
=
$result[0]['bin_data'];
$type
=
$result[0]['filetype'];
Header(
"Content-type:
$type");
echo
$data;
到瀏覽器查看已經上傳的圖片,看是否可以顯示
是沒有問題的,證明圖片已經以二進制的形式存儲到資料庫了
更多關於PHP相關內容感興趣的讀者可查看本站專題:《php+mysql資料庫操作入門教程》、《php+mysqli資料庫程序設計技巧總結》、《php面向對象程序設計入門教程》、《PHP數組(Array)操作技巧大全》、《php字元串(string)用法總結》及《php常見資料庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
您可能感興趣的文章:php實現上傳圖片保存到資料庫的方法php上傳圖片存入資料庫示例分享php上傳圖片到指定位置路徑保存到資料庫的具體實現php中如何將圖片儲存在資料庫里php下將圖片以二進制存入mysql資料庫中並顯示的實現代碼php
從資料庫提取二進制圖片的處理代碼php將圖片保存入mysql資料庫失敗的解決方法php將圖片文件轉換成二進制輸出的方法php圖片的二進制轉換實現方法

J. 用php語句在一個頁面上傳圖片到指定文件夾,再在另外一個頁面顯示文件夾裡面的圖片。

參考網址:http://www.chinaz.com/design/2010/0308/108059.shtml

function getExtName($fileName){
$arr=pathinfo($fileName);
$ext=$arr["extension"];
return $ext;
}//獲得上傳圖片類型,JPG.PNG。。
function getnewName(){
$newName=date("YmdHis").md5(mt_rand(1000,9999));
return $newName;}//根據日期加密方式來給圖片命名
$upload1=$_FILES["upload1"];//得到的是數組
$namexx=$upload1["name"];
//echo $namexx;
//print_r($namexx);
$ext=getExtName();
//echo $ext."<br>";
$newName=getnewName();
//echo $newName;
$filepath="文件夾/".$newName.".".$ext;
move_uploaded_file($upload1["tmp_name"],$filepath);上傳到指定的文件夾
頁面調出圖片<img src="位置/圖片名稱"/> 就好了,名稱就是$newname

熱點內容
加密視頻怎麼解密 發布:2024-05-17 11:02:52 瀏覽:570
柳工挖機密碼多少合適 發布:2024-05-17 11:00:40 瀏覽:187
android工程嘆號 發布:2024-05-17 10:56:21 瀏覽:480
在蘋果手機應用怎麼比安卓貴 發布:2024-05-17 10:56:20 瀏覽:547
賽歐313配置怎麼樣 發布:2024-05-17 10:43:16 瀏覽:988
c語言預算 發布:2024-05-17 10:43:16 瀏覽:492
推薦對稱加密演算法 發布:2024-05-17 10:43:15 瀏覽:822
有存儲功能計算器 發布:2024-05-17 10:42:34 瀏覽:118
小米賬號密碼保險箱在哪裡 發布:2024-05-17 10:17:00 瀏覽:752
抖音引流腳本推薦 發布:2024-05-17 10:11:16 瀏覽:724