仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 762|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网页设计用PHP和MySQL保留和输入图片

[复制链接]
变相怪杰 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:23:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
因为函数实在是太多了,慢慢的你就会知道,知道有这个函数就可以。mysql   设置数据库
  咱们凡是在数据库中所利用的文本或整数类型的字段和需求用来保留图片的字段的分歧的地方就在于二者所需求保留的数据量分歧。MySQL数据库利用专门的字段来保留大容量的数据,数据类型为BLOB。
  MySQL数据库为BLOB做出的界说以下:BLOB数据类型是一种大型的二进制对象,可以保留可变数目的数据。BLOB具有四品种型,分离是TINYBLOB,BLOB, MEDIUMBLOB 和LONGBLOB,区分在于各自所可以保留的最大数据长度分歧。
  在引见了所需求利用的数据类型以后,咱们可使用以下语句创立保留图像的数据表。
  CREATE TABLE Images ( PicNum int NOT NULL AUTO_INCREMENT PRIMARY KEY, Image BLOB );
编写上传剧本
  关于若何完成文件的上传,咱们在这里就不再引见了,感乐趣的读者可以拜见“网页陶吧”内的相干文章。如今,咱们次要来看一下若何吸收上传文件并将其存入到MySQL数据库中。详细的剧本代码以下,个中咱们假定文件上传域的称号为Picture。
<?
If($Picture != "none") {
$PSize = filesize($Picture);
$mysqlPicture = addslashes(fread(fopen($Picture, "r"), $PSize));
mysql_connect($host,$username,$password) or die("Unable to connect to SQL server");
@mysql_select_db($db) or die("Unable to select database");
mysql_query("INSERT INTO Images (Image) VALUES ($mysqlPicture)") or die("Cant Perform Query");
}else {
echo"You did not upload any picture";
}
?>
  如许,咱们就能够胜利的把图片保留到数据库中。假如在将图片拔出MySQL的过程当中呈现成绩,可以反省一下MySQL数据库所答应的最大数据包的巨细。假如设置值太小的话,咱们会在数据库的毛病日记中找到响应的纪录。
  上面,咱们复杂申明一下上述剧本法式。起首,咱们经由过程“If($Picture != "none")”反省是不是有文件被上传。然后,利用addslashes()函数防止呈现数据格局毛病。最初,毗连MySQL,选择数据库并拔出图片。
显示图片
  在晓得了若何将图? 入数据库以后,咱们就需求思索如何才干从数据库中掏出图片并在HTML页面中显示出来。这个进程要略微庞杂一些,上面咱们就来引见一下完成进程。
由于PHP显示图片需求发送响应的标头,所以咱们就会晤临如许一个成绩,那就是一次只能显示一副图片,由于咱们没法在收回标头以后再发送其它的标头。
为了无效的处理这一成绩,咱们编写了两个文件。个中,第一个文件作为HTML页面的模板,定位图片的显示地位。第二个文件则被用来从数据库中实践输入文件流,作为<IMG>标签的SRC属性。
第一个文件的复杂模式可以以下:
<HTML> <BODY>
<?
mysql_connect($host,$username,$password) or die("Unable to connect to SQL server");
@mysql_select_db($db) or die("Unable to select database");
$result=mysql_query("SELECT * FROM Images") or die("Cant Perform Query");
While($row=mysql_fetch_object($result)) {
echo "<IMG SRC=\"Second.php3? PicNum=$row->PicNum\">";
} ?>
</BODY> </HTML>
  当HTML页面被阅读时,每显示一副图片就会挪用一次Second.php3文件。当第二个文件被挪用时会传入响应的Picture ID,咱们可以借此从数据库中取回对应的图片并显示。
Second.php3文件以下:
<?
$result=mysql_query("SELECT * FROM Images WHERE PicNum=$PicNum") or die("Cant perform Query");
$row=mysql_fetch_object($result);
Header( "Content-type: image/gif");
echo $row->Image;
?>
  到此,咱们就引见完了利用PHP和MySQL保留和显示图片的全进程。文中所举得都是一些最复杂的实例,读者可以依据本人的实践需求到场其它一些功效,使全部法式加倍完美。   会有很多高手的鼓励,新手的支持,慢慢你劲头就十足,有更多的信心和兴趣去学。
分手快乐 该用户已被删除
沙发
发表于 2015-2-4 12:55:12 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
乐观 该用户已被删除
板凳
发表于 2015-2-6 04:50:59 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
因胸联盟 该用户已被删除
地板
发表于 2015-2-7 11:40:16 | 只看该作者
对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。
柔情似水 该用户已被删除
5#
发表于 2015-2-21 19:46:11 | 只看该作者
做为1门年轻的语言,php一直很努力。
admin 该用户已被删除
6#
发表于 2015-2-26 06:09:14 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
金色的骷髅 该用户已被删除
7#
发表于 2015-3-8 12:18:01 | 只看该作者
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
小魔女 该用户已被删除
8#
发表于 2015-3-10 21:39:29 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
爱飞 该用户已被删除
9#
发表于 2015-3-10 22:30:04 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
变相怪杰 该用户已被删除
10#
 楼主| 发表于 2015-3-12 15:35:24 | 只看该作者
真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,
深爱那片海 该用户已被删除
11#
发表于 2015-3-19 00:11:39 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
飘飘悠悠 该用户已被删除
12#
发表于 2015-3-25 17:13:02 | 只看该作者
当然这种网站的会员费就几十块钱。
再见西城 该用户已被删除
13#
发表于 2015-4-10 08:46:52 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
简单生活 该用户已被删除
14#
发表于 2015-4-10 10:18:13 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
第二个灵魂 该用户已被删除
15#
发表于 2015-4-12 20:43:44 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
飘灵儿 该用户已被删除
16#
发表于 2015-4-17 13:57:08 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
17#
发表于 2015-4-21 08:23:33 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
不帅 该用户已被删除
18#
发表于 2015-4-26 19:11:54 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
若天明 该用户已被删除
19#
发表于 2015-4-28 00:47:21 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
只想知道 该用户已被删除
20#
发表于 2015-5-6 15:10:56 | 只看该作者
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年  具体的记不清啦,囧。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-13 10:46

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表