龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

PHP将图片存入mysql后再显示出来(支持多张)

时间:2014-07-22 14:51来源: 作者: 点击:
分享到:
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)
)
<?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>
精彩图集

赞助商链接