手机
当前位置:查字典教程网 >编程开发 >php教程 >图片存储与浏览一例(Linux+Apache+PHP+MySQL)
图片存储与浏览一例(Linux+Apache+PHP+MySQL)
摘要:注意本程序使用的表结构为:usetest;createtableimage(idintunsignedauto_incrementprima...

注意本程序使用的表结构为:

use test;

create table image(

id int unsigned auto_increment primary key,

description text,

filename varchar(50),

filesize int,

filetype varchar(50),

filedata longblob

);

*/

//?cmd={read|list|form|store}

//检查cmd参数的合法性

switch($cmd){

case 'read':

break;

case 'list':

break;

case 'form':

break;

Case 'store':

break;

default:

$cmd = 'list';

break;

}

switch($cmd){

case 'read':

//?cmd=read&id={}

//读一个图片

$server = mysql_connect("localhost","test","") or die("无法连接数据库服务器");

mysql_select_db("test",$server) or die("无法连接数据库");

$sql = "select filetype,filedata from image where id='$id'";

$rst = mysql_query($sql,$server) or die("$sql查询出错");

if($row=mysql_fetch_row($rst)){

header("Content-Type:" . $row[0]);

echo $row[1];

}

else{

echo "没有找到该记录";

}

mysql_free_result($rst);

mysql_close($server) or die("无法与数据库服务器断开连接");

break;

case 'list':

//?cmd=list

//显示所有图片

echo '<html>';

echo '<head><title>图片存储与浏览一例</title></head>';

echo '<body>';

echo '<a href="' . $PHP_SELF . '?cmd=list">显示所有图片</a>';

echo "";

echo '<a href="' . $PHP_SELF . '?cmd=form">上传图片</a>';

$server = mysql_connect("localhost","test","") or die("无法连接数据库服务器");

mysql_select_db("test",$server) or die("无法连接数据库");

$sql = "select id,description,filename,filetype,filesize from image";

$rst = mysql_query($sql,$server) or die("$sql查询出错");

while($row=mysql_fetch_row($rst)){

echo "<hr>";

echo "描述:" . $row[1] . "<br>";

echo "文件名:" . $row[2] . "<br>";

echo "类型:" . $row[3] . "<br>";

echo "大小:" . $row[4] . "<br>";

echo '<img src="' . $PHP_SELF . '?cmd=read&id=' . $row[0] . '">';

}

mysql_free_result($rst);

mysql_close($server) or die("无法与数据库服务器断开连接");

echo '</body>';

echo '</html>';

break;

case 'form':

?>

<html>

<head><title>图片存储与浏览一例</title></head>

<body>

<form action="<?echo $PHP_SELF;?>?cmd=store" method="post" enctype="multipart/form-data">

<input type="hidden" name="MAX_FILE_SIZE" value="2097152">

描述:<br>

<textarea name="description" rows="5" cols="100"></textarea><br>

文件:<input type="file" name="file"><br>

<input type="submit" value="上传">

</form>

</body>

</html>

<?

break;

case 'store':

//?cmd=store&description={}&file={}&file_size={}&file_type={}&file_name={}

//存储图片

echo '<html>';

echo '<head><title>图片存储与浏览一例</title></head>';

echo '<body>';

echo '<a href="' . $PHP_SELF . '?cmd=list">显示所有图片</a>';

echo "";

echo '<a href="' . $PHP_SELF . '?cmd=form">上传图片</a>';

$server = mysql_connect("localhost","test","") or die("无法连接数据库服务器");

mysql_select_db("test",$server) or die("无法连接数据库");

$data = addslashes(fread(fopen($file,"r"),filesize($file)));

$sql = "insert into image(description,filename,filetype,filesize,filedata)

values('$description','" . basename($file_name) . "','$file_type',$file_size,'$data')";

mysql_query($sql,$server) or die("$sql执行出错");

$id = mysql_insert_id();

echo "<hr>你上传的图片效果:<br>";

echo '<img src="' . $PHP_SELF . '?cmd=read&id=' . $id . '">';

mysql_close($server) or die("无法与数据库服务器断开连接");

echo '</body>';

echo '</html>';

break;

}

?>

【图片存储与浏览一例(Linux+Apache+PHP+MySQL)】相关文章:

PHP 5昨天隆重推出--PHP 5/Zend Engine 2.0新特性

用定制的PHP应用程序来获取Web服务器的状态信息

十天学会php之第八天

随机头像PHP版

第九节 绑定 [9]

改进的IP计数器

PHP获取远程图片并保存到本地的方法

WinXP + Apache +PHP5 + MySQL + phpMyAdmin安装全功略

第十一节 重载 [11]

用PHP和MYSQL建立计数器过程详解

精品推荐
分类导航