php显示MySQL图片
图片上传代码:<?php$conn=@mysql_connect("localhost","root","429780270")ordie("数据库链接错误");mysq...
图片上传代码:
<?php
$conn = @ mysql_connect("localhost", "root", "429780270") or die("数据库链接错误");
mysql_select_db("style-chanpin", $conn);
mysql_query("set names 'GBK'"); //使用GBK中文编码;
function htmtocode($content) {
$content = str_replace("\n", "<br>", str_replace(" ", " ", $content));
return $content;
}
if($_POST['submit']){
$sql="insert into message(id,imagesname,imagesmessage,imagesadds,update)
values ('','$_POST[imagesname]','$_POST[imagesmessage]','$_POST[imagesadds]',now() )";
mysql_query($sql);
echo "<script language=\"javascript\">alert('留言成功,谢谢您的支持!');history.go(-1)</script>";
}
?>
<form action="chanpin-up.php" method="POST" name="myform-chanpin" enctype="multipart/form-data" >
<br><span class="STYLE26">请输入产品名称:</span>
<input type="text" size="14" name="images-name" />
<br />
<span class="STYLE26">上传你的产品图片:</span>
<input name="imagesadds" type="file">
<br/>
<span class="STYLE26">请输入产品介绍:</span>
<textarea name="imagesmessage" cols="60" rows="9" /></textarea>
<br/>
<br>
<input type="submit" name="submit" value="发布产品" class="STYLE26"/>
</form>
图片显示页面:
<?php
$conn = @ mysql_connect("localhost", "root", "429780270") or die("数据库链接错误");
mysql_select_db("style-chanpin", $conn);
mysql_query("set names 'GBK'"); //使用GBK中文编码;
function htmtocode($content) {
$content = str_replace("\n", "<br>", str_replace(" ", " ", $content));
return $content;
}
<table width=800 border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#add3ef">
<?
$picture = base64_encode($picture);
$sql = "SELECT * FROM `chanpin-message` LIMIT 0, 30 ";
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){
?>
<tr bgcolor="#eff3ff">
<td nowrap="nowrap" bgcolor="#FFF0F0"><?=$row[id]?> 产品名称:<?=$row[imagesname] ?> 产品图片:<?=$row[imagesadds]?> 产品说明:<?=$row[imagesmessage]?> </td>
</tr>
<tr bgColor="#ffffff">
<td> 发布时间:<?=$row[update]?></td>
</tr>
<?}?>
</table>
数据库结构:
-- phpMyAdmin SQL Dump
-- version 2.10.3
-- http://www.phpmyadmin.net
--
-- 主机: localhost
-- 生成日期: 2010 年 05 月 23 日 07:17
-- 服务器版本: 5.0.51
-- PHP 版本: 5.2.6
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- 数据库: `style-chanpin`
--
-- --------------------------------------------------------
--
-- 表的结构 `chanpin-message`
--
CREATE TABLE `chanpin-message` (
`id` varchar(10) NOT NULL,
`imagesadds` blob NOT NULL,
`imagesname` varchar(20) NOT NULL,
`imagesmessage` varchar(100) NOT NULL,
`update` datetime NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- 导出表中的数据 `chanpin-message`
这些就是全部代码了 可是在图片上传和显示都有问题,我应该怎么修改呢?那里错了? 展开
<?php
$conn = @ mysql_connect("localhost", "root", "429780270") or die("数据库链接错误");
mysql_select_db("style-chanpin", $conn);
mysql_query("set names 'GBK'"); //使用GBK中文编码;
function htmtocode($content) {
$content = str_replace("\n", "<br>", str_replace(" ", " ", $content));
return $content;
}
if($_POST['submit']){
$sql="insert into message(id,imagesname,imagesmessage,imagesadds,update)
values ('','$_POST[imagesname]','$_POST[imagesmessage]','$_POST[imagesadds]',now() )";
mysql_query($sql);
echo "<script language=\"javascript\">alert('留言成功,谢谢您的支持!');history.go(-1)</script>";
}
?>
<form action="chanpin-up.php" method="POST" name="myform-chanpin" enctype="multipart/form-data" >
<br><span class="STYLE26">请输入产品名称:</span>
<input type="text" size="14" name="images-name" />
<br />
<span class="STYLE26">上传你的产品图片:</span>
<input name="imagesadds" type="file">
<br/>
<span class="STYLE26">请输入产品介绍:</span>
<textarea name="imagesmessage" cols="60" rows="9" /></textarea>
<br/>
<br>
<input type="submit" name="submit" value="发布产品" class="STYLE26"/>
</form>
图片显示页面:
<?php
$conn = @ mysql_connect("localhost", "root", "429780270") or die("数据库链接错误");
mysql_select_db("style-chanpin", $conn);
mysql_query("set names 'GBK'"); //使用GBK中文编码;
function htmtocode($content) {
$content = str_replace("\n", "<br>", str_replace(" ", " ", $content));
return $content;
}
<table width=800 border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#add3ef">
<?
$picture = base64_encode($picture);
$sql = "SELECT * FROM `chanpin-message` LIMIT 0, 30 ";
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){
?>
<tr bgcolor="#eff3ff">
<td nowrap="nowrap" bgcolor="#FFF0F0"><?=$row[id]?> 产品名称:<?=$row[imagesname] ?> 产品图片:<?=$row[imagesadds]?> 产品说明:<?=$row[imagesmessage]?> </td>
</tr>
<tr bgColor="#ffffff">
<td> 发布时间:<?=$row[update]?></td>
</tr>
<?}?>
</table>
数据库结构:
-- phpMyAdmin SQL Dump
-- version 2.10.3
-- http://www.phpmyadmin.net
--
-- 主机: localhost
-- 生成日期: 2010 年 05 月 23 日 07:17
-- 服务器版本: 5.0.51
-- PHP 版本: 5.2.6
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- 数据库: `style-chanpin`
--
-- --------------------------------------------------------
--
-- 表的结构 `chanpin-message`
--
CREATE TABLE `chanpin-message` (
`id` varchar(10) NOT NULL,
`imagesadds` blob NOT NULL,
`imagesname` varchar(20) NOT NULL,
`imagesmessage` varchar(100) NOT NULL,
`update` datetime NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- 导出表中的数据 `chanpin-message`
这些就是全部代码了 可是在图片上传和显示都有问题,我应该怎么修改呢?那里错了? 展开
3个回答
展开全部
<?php
$user='root';
$password='root';
$db='test';
$connect=mysql_connect('localhost',$user,$password);
mysql_set_charset('utf8',$connect);
mysql_select_db($db);
$photo
=
"0x".bin2hex(file_get_contents("./test.jpg"));
$sql="INSERT
INTO
`test`.`test`
(`photo`)
VALUES
($photo);";//$photo不需要用引号,切记
mysql_query($sql);
//$result=mysql_query("SELECT
*
//FROM
`test`
//LIMIT
0
,
30");
//$img=mysql_fetch_array($result);
//echo
$img['photo'];
?>
把注释打开就是读取并显示的
$user='root';
$password='root';
$db='test';
$connect=mysql_connect('localhost',$user,$password);
mysql_set_charset('utf8',$connect);
mysql_select_db($db);
$photo
=
"0x".bin2hex(file_get_contents("./test.jpg"));
$sql="INSERT
INTO
`test`.`test`
(`photo`)
VALUES
($photo);";//$photo不需要用引号,切记
mysql_query($sql);
//$result=mysql_query("SELECT
*
//FROM
`test`
//LIMIT
0
,
30");
//$img=mysql_fetch_array($result);
//echo
$img['photo'];
?>
把注释打开就是读取并显示的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$_POST[imagesadds]只是图片的在客户端的路径而不是图片文件,被上传的东西在$_FILES变量里面:
$_FILES['userfile']['name']
客户端机器文件的原名称。
$_FILES['userfile']['type']
文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。
$_FILES['userfile']['size']
已上传文件的大小,单位为字节。
$_FILES['userfile']['tmp_name']
文件被上传后在服务端储存的临时文件名。
要把上传的文件存到MySQL服务器里必须这样:
$fp=fopen($_FILES['userfile']['tmp_name'],'r');
$im=fread($fp,$_FILES['userfile']['size']);
fclose($fp);
。。。。。
$sql="insert into message(id,imagesname,imagesmessage,imagesadds,update)
values ('','$_POST[imagesname]','$_POST[imagesmessage]','$im,now() )";
。。。。。。
读取的时候也不能就那么直接把图片echo出来,
应该<img src="...img.php?id={$_row['id']}" />
img.php当中如此
<?php
$sql = "SELECT `imagesadds` FROM `chanpin-message` WHERE `id`=".$_GET['id'];
$query=mysql_query($sql);
$query=mysql_fetch_array($query);
echo $query[0]['imagesadds'];
?>
$_FILES['userfile']['name']
客户端机器文件的原名称。
$_FILES['userfile']['type']
文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。
$_FILES['userfile']['size']
已上传文件的大小,单位为字节。
$_FILES['userfile']['tmp_name']
文件被上传后在服务端储存的临时文件名。
要把上传的文件存到MySQL服务器里必须这样:
$fp=fopen($_FILES['userfile']['tmp_name'],'r');
$im=fread($fp,$_FILES['userfile']['size']);
fclose($fp);
。。。。。
$sql="insert into message(id,imagesname,imagesmessage,imagesadds,update)
values ('','$_POST[imagesname]','$_POST[imagesmessage]','$im,now() )";
。。。。。。
读取的时候也不能就那么直接把图片echo出来,
应该<img src="...img.php?id={$_row['id']}" />
img.php当中如此
<?php
$sql = "SELECT `imagesadds` FROM `chanpin-message` WHERE `id`=".$_GET['id'];
$query=mysql_query($sql);
$query=mysql_fetch_array($query);
echo $query[0]['imagesadds'];
?>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询