PHP将图片存入mysql后再显示出来(支持多张)
DB script: CREATE TABLE ccs_image (br / id int(4) unsigned NOT NULL auto_increment,br / description varchar(250) default NULL,br / bin_data longblob,br / filename varchar(50) default NULL,br / filesize varchar(50) default NULL,br / filetype
DB script: 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)
)
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)
)
<?php
$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'];
//echo "winson";
// ßB½Óµ½ÙYÁÏŽì
$connect = MYSQL_CONNECT( "localhost", "root", "admin") or die("Unable to connect to MySQL server");
mysql_select_db("blogsystem") or die("Unable to select database");
$data = addslashes(fread(fopen($form_data, "r"), filesize($form_data)));
//echo "mysqlPicture=".$data;
$result=MYSQL_QUERY( "INSERT INTO ccs_image (description,bin_data,filename,filesize,filetype) VALUES ('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')");
$id= mysql_insert_id();
print "<p>This file has the following Database ID: <a href='get_data.php?id=$id'><b>$id</b></a>";
MYSQL_CLOSE();
?>
2. [文件] get_data.php ~ 874B 下载(111) 跳至 [1] [2] [3] [全屏预览]
<?php
if(isset($_GET['id'])) {
$id = $_GET['id'];
$connect = MYSQL_CONNECT("localhost", "root", "admin") or die("Unable to connect to MySQL server");
mysql_select_db("blogsystem") or die("Unable to select database");
$query = "select bin_data,filetype from ccs_image where id=$id";
$result = @MYSQL_QUERY($query);
$out=mysql_fetch_array($result);
$data=$out["bin_data"];
$type=$out["filetype"];
Header( "Content-type: $type");
echo $data;
}
if(isset($_GET["pic_id"]))
{
$pic_id = $_GET['pic_id'];
$connect = MYSQL_CONNECT("localhost", "root", "admin") or die("Unable to connect to MySQL server");
mysql_select_db("blogsystem") or die("Unable to select database");
$query = "select * from ccs_image where id=$pic_id";
$result = @MYSQL_QUERY($query);
$out=mysql_fetch_array($result);
echo $out["id"];
}
?>
3. [文件] new_file.php ~ 1KB 下载(114) 跳至 [1] [2] [3] [全屏预览]
<?php
$connect = MYSQL_CONNECT( "localhost", "root", "admin") or die("Unable to connect to MySQL server");
mysql_select_db("blogsystem") or die("Unable to select database");
$sql="select * from ccs_image";
$result=mysql_query($sql) or die(mysql_error());
while($out=@mysql_fetch_array($result))
{
echo "<img style='style:height:100px;width:100px;' src='get_data.php?id=".$out['id']."' onmouseover='see_big(".$out['id'].")' /><br/>";
}
?>
<script src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
});
function see_big(id)
{
var pic_id=id;
$.ajax({
type: "GET",
data: "pic_id="+pic_id,
url: "get_data.php",
dataType:'text',
success:function(data)
{
$("#big_pic img").attr("src","get_data.php?id="+data);
}
})
}
</script>
<div id="big_pic" style="height: 500px;width: 600px;position: absolute;margin-left: 200px;margin-top: -550px;"><img /></div>
<center>
<form method="post" action="form.php" enctype="multipart/form-data">
File Description:
<input type="text" name="form_description" size="40">
<INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="1000000"> <br>
File to upload/store in database:
<input type="file" name="form_data" size="40">
<p><input type="submit" name="submit" value="submit">
</form>
</center>
- 上一篇:Symfony2框架下一个简单Ajax留言板
- 下一篇:PHP 的单例模式
精彩图集
精彩文章






