﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-花之剑'HOME-文章分类-php技术</title><link>http://www.blogjava.net/lantin/category/18772.html</link><description>一朵飘舞在风中的雪花，挣扎着，不想被融化。</description><language>zh-cn</language><lastBuildDate>Tue, 14 Aug 2007 15:49:18 GMT</lastBuildDate><pubDate>Tue, 14 Aug 2007 15:49:18 GMT</pubDate><ttl>60</ttl><item><title>set_magic_quotes_runtime()的解释 </title><link>http://www.blogjava.net/lantin/articles/136230.html</link><dc:creator>花之剑</dc:creator><author>花之剑</author><pubDate>Sun, 12 Aug 2007 12:46:00 GMT</pubDate><guid>http://www.blogjava.net/lantin/articles/136230.html</guid><wfw:comment>http://www.blogjava.net/lantin/comments/136230.html</wfw:comment><comments>http://www.blogjava.net/lantin/articles/136230.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lantin/comments/commentRss/136230.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lantin/services/trackbacks/136230.html</trackback:ping><description><![CDATA[<u><font color=#800080>set_magic_quotes_runtime()的解释</font></u>
<div class=postText>先来了解一下 magic_quotes_runtime&nbsp;&nbsp;这是php.ini里面的环境配置变量，可以直接在php.ini里面设置为ON，那么PHP将会为所有的溢出字符，当遇到反斜杆、单引号，将会自动加上一个反斜杆，保护系统和数据库的安全。<br><br>那么 set_magic_quotes_runtime()&nbsp;&nbsp;就是在php.ini没有配置的情况下，一个设置的开关 0 为关闭 1为打开，就等于用程序手动打开 magic_quotes_runtime 。</div>
<img src ="http://www.blogjava.net/lantin/aggbug/136230.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lantin/" target="_blank">花之剑</a> 2007-08-12 20:46 <a href="http://www.blogjava.net/lantin/articles/136230.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>email 地址验证--正则表达</title><link>http://www.blogjava.net/lantin/articles/133064.html</link><dc:creator>花之剑</dc:creator><author>花之剑</author><pubDate>Sat, 28 Jul 2007 15:18:00 GMT</pubDate><guid>http://www.blogjava.net/lantin/articles/133064.html</guid><wfw:comment>http://www.blogjava.net/lantin/comments/133064.html</wfw:comment><comments>http://www.blogjava.net/lantin/articles/133064.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lantin/comments/commentRss/133064.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lantin/services/trackbacks/133064.html</trackback:ping><description><![CDATA[function checkmail($email)<br>{<br>&nbsp;&nbsp;&nbsp; $validEmailExpr="^[[0-9a-z~!#$%&amp;_-]([.]?[0-9a-z!#$%_-])*"."@[0-9a-z~!#$%&amp;_-]([.]?[0-9a-z-z~!#$%&amp;_-])*$";<br>&nbsp;&nbsp;&nbsp;&nbsp;if(!eregi($validEmailExpr,$email))<br>&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;<br>&nbsp;&nbsp;&nbsp;}<br>}
<img src ="http://www.blogjava.net/lantin/aggbug/133064.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lantin/" target="_blank">花之剑</a> 2007-07-28 23:18 <a href="http://www.blogjava.net/lantin/articles/133064.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>php安全性-通过url参数实现攻击</title><link>http://www.blogjava.net/lantin/articles/132907.html</link><dc:creator>花之剑</dc:creator><author>花之剑</author><pubDate>Fri, 27 Jul 2007 15:37:00 GMT</pubDate><guid>http://www.blogjava.net/lantin/articles/132907.html</guid><wfw:comment>http://www.blogjava.net/lantin/comments/132907.html</wfw:comment><comments>http://www.blogjava.net/lantin/articles/132907.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lantin/comments/commentRss/132907.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lantin/services/trackbacks/132907.html</trackback:ping><description><![CDATA[<p>exec("/usr/bin/cal {$GET['userString']}",$result);<br>foreach($result as $val)<br>&nbsp;&nbsp;&nbsp;print $val,"\n";<br>这个函数是输出参数传过来的月份的日历<br>假如我们在url中输入?2+2007;cat+/etc/passwd<br>这将完全看到passwd文件。对系统有很大的威胁<br>因此<br>我们需要对参数进行过滤。</p>
<img src ="http://www.blogjava.net/lantin/aggbug/132907.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lantin/" target="_blank">花之剑</a> 2007-07-27 23:37 <a href="http://www.blogjava.net/lantin/articles/132907.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Linux下配置功能完善的Web服务器</title><link>http://www.blogjava.net/lantin/articles/100545.html</link><dc:creator>花之剑</dc:creator><author>花之剑</author><pubDate>Sun, 25 Feb 2007 03:02:00 GMT</pubDate><guid>http://www.blogjava.net/lantin/articles/100545.html</guid><wfw:comment>http://www.blogjava.net/lantin/comments/100545.html</wfw:comment><comments>http://www.blogjava.net/lantin/articles/100545.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lantin/comments/commentRss/100545.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lantin/services/trackbacks/100545.html</trackback:ping><description><![CDATA[Error convertoring HTML to XHTML: System.ArgumentException: Invalid name character in 'php<br>　　phpinfo();<BR>　　'.
   at System.Xml.XmlTextWriter.ValidateName(String name, Boolean NCName)
   at System.Xml.XmlTextWriter.InternalWriteProcessingInstruction(String name, String text)
   at System.Xml.XmlTextWriter.WriteProcessingInstruction(String name, String text)
   at System.Xml.XmlWriter.WriteNode(XmlReader reader, Boolean defattr)
   at FreeTextBoxControls.Support.Formatter.HtmlToXhtml(String input)<img src ="http://www.blogjava.net/lantin/aggbug/100545.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lantin/" target="_blank">花之剑</a> 2007-02-25 11:02 <a href="http://www.blogjava.net/lantin/articles/100545.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何加速你的PHP程序</title><link>http://www.blogjava.net/lantin/articles/100418.html</link><dc:creator>花之剑</dc:creator><author>花之剑</author><pubDate>Fri, 23 Feb 2007 09:52:00 GMT</pubDate><guid>http://www.blogjava.net/lantin/articles/100418.html</guid><wfw:comment>http://www.blogjava.net/lantin/comments/100418.html</wfw:comment><comments>http://www.blogjava.net/lantin/articles/100418.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lantin/comments/commentRss/100418.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lantin/services/trackbacks/100418.html</trackback:ping><description><![CDATA[
		<p style="TEXT-INDENT: 2em">我一直认为PHP的运行速度是非常的理想的，尤其是Zend引擎的加速之后。但是PHP仍然有加速的可能，你知道吗？ </p>
		<p style="TEXT-INDENT: 2em">
				<strong>所有的一切都始于如何优化PHP的编译</strong>
		</p>
		<p style="TEXT-INDENT: 2em">尝试使用针对CPU型号的特殊编译参数 -msse -mmmx -mfpmath=sse </p>
		<p style="TEXT-INDENT: 2em">在编译的时候添加 -03参数</p>
		<p style="TEXT-INDENT: 2em">编译的时候调节CPU的参数 -march -mcpu Use Caution </p>
		<p style="TEXT-INDENT: 2em">尽量只编译你需要的模块，避免无用的扩展加载</p>
		<p style="TEXT-INDENT: 2em">对于很少使用的扩展模块，应该编译成共享模式，便于在运行的时候动态加载</p>
		<p style="TEXT-INDENT: 2em">也许有些时候--disable-all 会是你的好朋友</p>
		<p style="TEXT-INDENT: 2em">把PHP静态编译到Apache可以提速20％</p>
		<p style="TEXT-INDENT: 2em"># PHP </p>
		<p style="TEXT-INDENT: 2em">./configure --with-apache=/path/to/apache_source</p>
		<p style="TEXT-INDENT: 2em"># Apache</p>
		<p style="TEXT-INDENT: 2em">./configure --activate-module=src/modules/php4/libphp4.a </p>
		<p style="TEXT-INDENT: 2em">
				<strong>优化你的PHP配置文件</strong>
		</p>
		<p style="TEXT-INDENT: 2em">确认你的 register_globals 配置为disabled</p>
		<p style="TEXT-INDENT: 2em">禁用 magic_quotes_* 选项</p>
		<p style="TEXT-INDENT: 2em">关闭 expose_php </p>
		<p style="TEXT-INDENT: 2em">关闭 register_argc_argv </p>
		<p style="TEXT-INDENT: 2em">除非绝对需要不要启用 always_populate_raw_post_data </p>
		<p style="TEXT-INDENT: 2em">
				<strong>Apache服务器的优化配置</strong>
		</p>
		<p style="TEXT-INDENT: 2em">MaxSpareServers 使用高配置</p>
		<p style="TEXT-INDENT: 2em">MaxClients 设置为你的服务器可以承受的2/5</p>
		<p style="TEXT-INDENT: 2em">MaxRequestsPerChild 理想情况是0 (不限)，但是实际上都设置为一个较的一个值</p>
		<p style="TEXT-INDENT: 2em">
				<strong>优化文件访问</strong>
		</p>
		<p style="TEXT-INDENT: 2em">DirectoryIndex 文件列表尽可能简短</p>
		<p style="TEXT-INDENT: 2em">无论如何禁止 .htaccess 文件的 AllowOverridenone </p>
		<p style="TEXT-INDENT: 2em">使用 FollowSymLinks 简化文件访问处理</p>
		<p style="TEXT-INDENT: 2em">避免使用 mod_rewrite 或者更复杂的操作</p>
		<p style="TEXT-INDENT: 2em">如果日志非必须的话就禁用</p>
		<p style="TEXT-INDENT: 2em">如果必须使用日志，那么请记录到一个文件中去，并且在分析过后清除</p>
		<p style="TEXT-INDENT: 2em">
				<strong>消除昂贵的系统呼叫</strong>
		</p>
		<p style="TEXT-INDENT: 2em">不要开启 ExtendedStatus </p>
		<p style="TEXT-INDENT: 2em">在允许和禁止规则的时候使用IP而不要使用域名</p>
		<p style="TEXT-INDENT: 2em">不要启用 HostnameLookups </p>
		<p style="TEXT-INDENT: 2em">保持 ServerSignature 关闭</p>
		<p style="TEXT-INDENT: 2em">设置KeepAlive 为较小的一个值</p>
		<p style="TEXT-INDENT: 2em">动态和静态的内容分离</p>
		<p style="TEXT-INDENT: 2em">提高硬盘性能参数</p>
		<p style="TEXT-INDENT: 2em">使用output_buffering 优化PHP到Apache的交互</p>
		<p style="TEXT-INDENT: 2em">增加Apache的 SendBufferSize 大小</p>
		<p style="TEXT-INDENT: 2em">
				<strong>提高缓存执行</strong>
		</p>
		<p style="TEXT-INDENT: 2em">使用PHP代码缓存机制</p>
		<p style="TEXT-INDENT: 2em">Turck MMCache 停止开发</p>
		<p style="TEXT-INDENT: 2em">APC较慢，优化不够</p>
		<p style="TEXT-INDENT: 2em">Zend Cache优化性能好，但付费</p>
		<p style="TEXT-INDENT: 2em">ionCube PHP Accelerator 免费但不开源</p>
		<p style="TEXT-INDENT: 2em">如果可以使用Zlib压缩</p>
		<p style="TEXT-INDENT: 2em">
				<strong>减少输出数据</strong>
		</p>
		<p style="TEXT-INDENT: 2em">用CSS替换HTML</p>
		<p style="TEXT-INDENT: 2em">压缩HTML页面</p>
		<p style="TEXT-INDENT: 2em">
				<strong>使用Sessions管理</strong>
		</p>
		<p style="TEXT-INDENT: 2em">
				<strong>优化你的SQL指令</strong>
		</p>
<img src ="http://www.blogjava.net/lantin/aggbug/100418.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lantin/" target="_blank">花之剑</a> 2007-02-23 17:52 <a href="http://www.blogjava.net/lantin/articles/100418.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>大型Web需求解决方案 PHP定位突出 </title><link>http://www.blogjava.net/lantin/articles/100254.html</link><dc:creator>花之剑</dc:creator><author>花之剑</author><pubDate>Tue, 20 Feb 2007 07:24:00 GMT</pubDate><guid>http://www.blogjava.net/lantin/articles/100254.html</guid><wfw:comment>http://www.blogjava.net/lantin/comments/100254.html</wfw:comment><comments>http://www.blogjava.net/lantin/articles/100254.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lantin/comments/commentRss/100254.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lantin/services/trackbacks/100254.html</trackback:ping><description><![CDATA[2007年1月27日PHPChina周末主题论坛在许多热爱PHP、热爱开源的爱好者的支持下顺利结束，这次活动的主题是“开源PHP与个人的发展”。我们有幸请到了许多知名网站的技术总监和部门经理出席讨论。他们分别是搜狐社区技术主管董江明、新浪WAP内容系统技术主管陈理捷、悠视网技术总监安然、金山在线技术总监王海洲、粉丝网技术总监孙翯和众易天下的CEO李海军等。 <br /><br />　　 此外，PHPChina还邀请PEA北京的PHP爱好者参与，与嘉宾们一起探讨了开源PHP的发展，在整个讨论过程中，大家都关注大型Web应用的发展趋势，一致认为未来的Web发展趋势将是网站的综合解决方案，而PHP在其中所扮演的角色更加突出。在经典的Web大型应用中，PHP主要是在连接层和表现层运行，具备稳定快速的特点。而这个特点也使得PHP在网站的整体解决方案中的定位更加清晰了。 <br /><br />　　 在讨论中，搜狐社区的技术主管董江明首先提出了Web应用综合，在支撑搜狐社区每日最高4000万PV，最大在线人数6万的平台中，主要使用了PHP、C、数据库Squid等技术。他们把这技术综合在一起，从而达到理想的效果。 <br /><br />　　在搜狐社区的技术体系中C的应用主要承载着后台数据处理加速的工作，从而快速地进行数据存储和更新。PHP主要承载了前端的应用，发挥它快速开发和运行稳定的长处，为用户创造良好的浏览体验。搜狐社区之所以能够承载每日4000万PV的高访问量，依靠的就是多语言平台之间良好的协调与配合。董江明认为，大型的Web应用并不单单是指依靠一种技术就能实现的，这需要一个综合解决方案，而PHP在其中尤其扮演着至关重要的角色。 <br /><br />　　对于这个概念，新浪WAP内容系统技术主管陈理捷也表示由于用户查看WAP内容使用的手机型号不同，所以需要使用PHP来进行动态的处理。但是刚开始的时候服务器的压力是非常大的。因此，通过在后台使用内容Cache技术，使得压力得以分担，再配合PHP快速响应的特点。使得用户通过不同的手机访问都能得到很好的浏览效果，而且对于服务器的压力也非常小。因此这种合理的系统架构为他们带来巨大的收益。 <br /><br />　　悠视网技术总监安然也表示，对于大型应用来说，综合解决方案是最好的选择。悠视网是以P2P技术实现在线视频观看的网站，它也使用PHP来实现Web2.0用户交互的功能。安然说道，悠视网的平台之所以能够支持大量用户的交互主要依靠合理的系统架构，在这个架构中，分为前端和后端两个子架构，而PHP技术承载的就是前端的应用。从整体运行效果来看，这种分离合理地分担了系统压力还是很成功的。 <br /><br />　　其他的嘉宾也都表示在网站架构设计的时候，需要慎重的考虑这个问题，例如众易天下的CEO李海军说到，在合理的架构下，8台服务器每天提供300万PV的流量是没有任何问题的。而金山在线技术总监王海洲也表示如果架构设计不合理会较大地影响网站的响应，给用户造成很差的浏览体验。此外，粉丝网技术总监孙翯还提出不单是系统级的考虑，在粉丝网的平台中，非常重视代码的整体执行效率问题。 <br /><br />　　PHPChina认为，随着Web2.0的急速发展，大量使用PHP技术搭建的网站出现并发展起来。面对日益增高的流量，这些PHP能否继续承载下去将成为一个不得不慎重考虑的问题。为此，PHPChina也向广大PHP使用者建议，作为一个脚本语言，应当让它在最合适的前端处理层应用，尽量避免后台或者连接层过多使用PHP。进行合理的架构组合后，PHP才能够有效地发挥出快速开发、运行稳定等特性，从而为你的业务创造价值。<img src ="http://www.blogjava.net/lantin/aggbug/100254.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lantin/" target="_blank">花之剑</a> 2007-02-20 15:24 <a href="http://www.blogjava.net/lantin/articles/100254.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Mysql的常用命令 </title><link>http://www.blogjava.net/lantin/articles/95151.html</link><dc:creator>花之剑</dc:creator><author>花之剑</author><pubDate>Sun, 21 Jan 2007 09:12:00 GMT</pubDate><guid>http://www.blogjava.net/lantin/articles/95151.html</guid><wfw:comment>http://www.blogjava.net/lantin/comments/95151.html</wfw:comment><comments>http://www.blogjava.net/lantin/articles/95151.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lantin/comments/commentRss/95151.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lantin/services/trackbacks/95151.html</trackback:ping><description><![CDATA[
		<strong>
				<font color="#295200" size="5">Mysql的常用命令</font>
		</strong>
		<table style="BORDER-COLLAPSE: collapse" bordercolor="#a5bd6b" cellspacing="1" cellpadding="0" width="100%" border="1">
				<tbody>
						<tr>
								<td align="middle">
										<table style="BORDER-COLLAPSE: collapse; WORD-WRAP: break-word" cellspacing="0" cellpadding="0" width="100%" border="0">
												<tbody>
														<tr>
																<td align="middle">
																		<table style="BORDER-COLLAPSE: collapse; WORD-WRAP: break-word" cellspacing="0" cellpadding="0" width="100%" border="0">
																				<tbody>
																						<tr>
																								<td>
																										<div id="art" style="MARGIN: 15px">
																												<div>
																														<table cellspacing="0" cellpadding="1" width="90%" align="center" border="0">
																																<tbody>
																																		<tr>
																																				<td>
																																						<b>简述:  </b>
																																						<font color="#004080">Mysql的常用命令</font>
																																				</td>
																																		</tr>
																																		<!--End Abstract-->
																																		<!--Content-->
																																		<tr>
																																				<td style="TABLE-LAYOUT: fixed; FONT-SIZE: 14px; LINE-HEIGHT: 160%; WORD-WRAP: break-word" valign="top" width="80%">
																																						<p>一、连接MYSQL。 </p>
																																						<p>格式： mysql -h主机地址 -u用户名 －p用户密码 </p>
																																						<p>1、例1：连接到本机上的MYSQL。 </p>
																																						<p>首先在打开DOS窗口，然后进入目录 mysqlbin，再键入命令mysql -uroot -p，回车后提示你输密码，如果刚安装好MYSQL，超级用户root是没有密码的，故直接回车即可进入到MYSQL中了，MYSQL的提示符是：mysql＞ </p>
																																						<p>2、例2：连接到远程主机上的MYSQL。假设远程主机的IP为：110.110.110.110，用户名为root,密码为abcd123。则键入以下命令： </p>
																																						<p>mysql -h110.110.110.110 -uroot -pabcd123 </p>
																																						<p>（注:u与root可以不用加空格，其它也一样） </p>
																																						<p>3、退出MYSQL命令： exit （回车） </p>
																																						<p>二、修改密码。 </p>
																																						<p>格式：mysqladmin -u用户名 -p旧密码 password 新密码 </p>
																																						<p>1、例1：给root加个密码ab12。首先在DOS下进入目录mysqlbin，然后键入以下命令 </p>
																																						<p>mysqladmin -uroot -password ab12 </p>
																																						<p>注：因为开始时root没有密码，所以-p旧密码一项就可以省略了。 </p>
																																						<p>2、例2：再将root的密码改为djg345。 </p>
																																						<p>mysqladmin -uroot -pab12 password djg345 </p>
																																						<p>三、增加新用户。（注意：和上面不同，下面的因为是MYSQL环境中的命令，所以后面都带一个分号作为命令结束符） </p>
																																						<p>格式：grant select on 数据库.* to 用户名@登录主机 identified by `密码` </p>
																																						<p>例1、增加一个用户test1密码为abc，让他可以在任何主机上登录，并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL，然后键入以下命令： </p>
																																						<p>grant select,insert,update,delete on *.* to <a href="mailto:test1@`%"><u><font color="#333366">test1@`%</font></u></a>` Identified by `abc`; </p>
																																						<p>但例1增加的用户是十分危险的，你想如某个人知道test1的密码，那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了，解决办法见例2。 </p>
																																						<p>例2、增加一个用户test2密码为abc,让他只可以在localhost上登录，并可以对数据库mydb进行查询、插入、修改、删除的操作（localhost指本地主机，即MYSQL数据库所在的那台主机），这样用户即使用知道test2的密码，他也无法从internet上直接访问数据库，只能通过MYSQL主机上的web页来访问了。 </p>
																																						<p>grant select,insert,update,delete on mydb.* to <a href="mailto:test2@localhost"><u><font color="#333366">test2@localhost</font></u></a> identified by `abc`; </p>
																																						<p>如果你不想test2有密码，可以再打一个命令将密码消掉。 </p>
																																						<p>grant select,insert,update,delete on mydb.* to <a href="mailto:test2@localhost"><u><font color="#333366">test2@localhost</font></u></a> identified by ``; </p>
																																						<p>在上篇我们讲了登录、增加用户、密码更改等问题。下篇我们来看看MYSQL中有关数据库方面的操作。注意：你必须首先登录到MYSQL中，以下操作都是在MYSQL的提示符下进行的，而且每个命令以分号结束。 </p>
																																						<p>一、操作技巧 </p>
																																						<p>1、如果你打命令时，回车后发现忘记加分号，你无须重打一遍命令，只要打个分号回车就可以了。也就是说你可以把一个完整的命令分成几行来打，完后用分号作结束标志就OK。 </p>
																																						<p>2、你可以使用光标上下键调出以前的命令。但以前我用过的一个MYSQL旧版本不支持。我现在用的是mysql-3.23.27-beta-win。 </p>
																																						<p>二、显示命令 </p>
																																						<p>1、显示数据库列表。 </p>
																																						<p>show databases; </p>
																																						<p>刚开始时才两个数据库：mysql和test。mysql库很重要它里面有MYSQL的系统信息，我们改密码和新增用户，实际上就是用这个库进行操作。 </p>
																																						<p>2、显示库中的数据表： </p>
																																						<p>use mysql； ／／打开库，学过FOXBASE的一定不会陌生吧 </p>
																																						<p>show tables; </p>
																																						<p>3、显示数据表的结构： </p>
																																						<p>describe 表名; </p>
																																						<p>4、建库： </p>
																																						<p>create database 库名; </p>
																																						<p>5、建表： </p>
																																						<p>use 库名； </p>
																																						<p>create table 表名 (字段设定列表)； </p>
																																						<p>6、删库和删表: </p>
																																						<p>drop database 库名; </p>
																																						<p>drop table 表名； </p>
																																						<p>7、将表中记录清空： </p>
																																						<p>delete from 表名; </p>
																																						<p>8、显示表中的记录： </p>
																																						<p>select * from 表名; </p>
																																						<p>三、一个建库和建表以及插入数据的实例 </p>
																																						<p>drop database if exists school; //如果存在SCHOOL则删除 </p>
																																						<p>create database school; //建立库SCHOOL </p>
																																						<p>use school; //打开库SCHOOL </p>
																																						<p>create table teacher //建立表TEACHER </p>
																																						<p>( </p>
																																						<p>id int(3) auto_increment not null primary key, </p>
																																						<p>name char(10) not null, </p>
																																						<p>address varchar(50) default ’深圳’, </p>
																																						<p>year date </p>
																																						<p>); //建表结束 </p>
																																						<p>//以下为插入字段 </p>
																																						<p>insert into teacher values(’’,’glchengang’,’深圳一中’,’1976-10-10’); </p>
																																						<p>insert into teacher values(’’,’jack’,’深圳一中’,’1975-12-23’); </p>
																																						<p>注：在建表中（1）将ID设为长度为3的数字字段:int(3)并让它每个记录自动加一:auto_increment并不能为空:not null而且让他成为主字段primary key（2）将NAME设为长度为10的字符字段（3）将ADDRESS设为长度50的字符字段，而且缺省值为深圳。varchar和char有什么区别呢，只有等以后的文章再说了。（4）将YEAR设为日期字段。 </p>
																																						<p>如果你在mysql提示符键入上面的命令也可以，但不方便调试。你可以将以上命令原样写入一个文本文件中假设为school.sql，然后复制到c:下，并在DOS状态进入目录mysql&#x8;in，然后键入以下命令： </p>
																																						<p>mysql -uroot -p密码 ＜ c:school.sql </p>
																																						<p>如果成功，空出一行无任何显示；如有错误，会有提示。（以上命令已经调试，你只要将//的注释去掉即可使用）。 </p>
																																						<p>四、将文本数据转到数据库中 </p>
																																						<p>1、文本数据应符合的格式：字段数据之间用tab键隔开，null值用来代替. </p>
																																						<p>例： </p>
																																						<p>3 rose 深圳二中 1976-10-10 </p>
																																						<p>4 mike 深圳一中 1975-12-23 </p>
																																						<p>2、数据传入命令 load data local infile `文件名` into table 表名; </p>
																																						<p>注意：你最好将文件复制到mysql&#x8;in目录下，并且要先用use命令打表所在的库。 </p>
																																						<p>五、备份数据库：（命令在DOS的mysql&#x8;in目录下执行） </p>
																																						<p>mysqldump --opt school＞school.bbb </p>
																																						<p>注释:将数据库school备份到school.bbb文件，school.bbb是一个文本文件，文件名任取，打开看看你会有新发现。 </p>
																																						<p>后记：其实MYSQL的对数据库的操作与其它的SQL类数据库大同小异，您最好找本将SQL的书看看。我在这里只介绍一些基本的，其实我也就只懂这些了，呵呵。最好的MYSQL教程还是“晏子“译的“MYSQL中文参考手册“不仅免费每个相关网站都有下载，而且它是最权威的。可惜不是象`PHP4中文手册`那样是chm的格式，在查找函数命令的时候不太方便</p>
																																				</td>
																																		</tr>
																																</tbody>
																														</table>
																												</div>
																										</div>
																								</td>
																						</tr>
																				</tbody>
																		</table>
																</td>
														</tr>
												</tbody>
										</table>
								</td>
						</tr>
				</tbody>
		</table>
<img src ="http://www.blogjava.net/lantin/aggbug/95151.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lantin/" target="_blank">花之剑</a> 2007-01-21 17:12 <a href="http://www.blogjava.net/lantin/articles/95151.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>玩转图像函数库—常见图形操作</title><link>http://www.blogjava.net/lantin/articles/90564.html</link><dc:creator>花之剑</dc:creator><author>花之剑</author><pubDate>Thu, 28 Dec 2006 11:05:00 GMT</pubDate><guid>http://www.blogjava.net/lantin/articles/90564.html</guid><wfw:comment>http://www.blogjava.net/lantin/comments/90564.html</wfw:comment><comments>http://www.blogjava.net/lantin/articles/90564.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lantin/comments/commentRss/90564.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lantin/services/trackbacks/90564.html</trackback:ping><description><![CDATA[
		<p>
				<font size="2">玩转图像函数库—常见图形操作</font>
		</p>
		<p>
				<font size="2">发布时间：2006-2-17 9:42:40 点击率：915</font>
		</p>
		<h3>
				<font size="2">我尽量不说大理论,诸如什么是png,自己查解决.</font>
		</h3>
		<p>
				<font size="2">PHP自4.3版本开始,捆绑了自己的GD2库,用户可以自己下载并设置.如果要查看自己的php版本是否支持gd模块(支持JPEG,PNG,WBMP但不再支持GIF),如下方式是一种方法:</font>
		</p>
		<p>
				<span class="code">
						<font size="2">if(!function_exists(imagecreate)) {<br />die(本服务器不支持GD模块);<br />}</font>
				</span>
		</p>
		<p>
				<font size="2">如果不支持的话,如何配置 ? 下载gd模块的dll文件,修改php.ini,重启服务器即可.</font>
		</p>
		<p>
				<font size="2">以下简称PHP作图为PS.</font>
		</p>
		<p>
				<font size="2">当您打算 PS的话,应该完成如下如下步骤,这是必经的.</font>
		</p>
		<p>
				<font size="2">1:创建基本PS对象(我假设为$image),填充背景(默认黑),以后的全部ps操作都是基于这个背景图像的.<br />2:在$image上作图.<br />3:输出这个图像.<br />4:销毁对象,清除使用内存.</font>
		</p>
		<p>
				<font size="2">首先,我们来认识几个常用的函数,这些函数在php手册里面都有详细介绍,此处大体引用下.</font>
		</p>
		<p>
				<font size="2">resource imagecreate ( int x_size, int y_size )<br />imagecreate() 返回一个图像标识符，代表了一幅大小为 x_size 和 y_size 的空白图像。<br />此函数基本同imagetruecolor($width,$height).</font>
		</p>
		<p>
				<font size="2">int imagecolorallocate ( resource image, int red, int green, int blue )<br />imagecolorallocate() 返回一个标识符，代表了由给定的 RGB 成分组成的颜色。image 参数是 imagecreatetruecolor() 函数的返回值。red，green 和 blue 分别是所需要的颜色的红，绿，蓝成分。这些参数是 0 到 255 的整数或者十六进制的 0x00 到 0xFF。imagecolorallocate() 必须被调用以创建每一种用在 image 所代表的图像中的颜色。</font>
		</p>
		<p>
				<font size="2">bool imagefill ( resource image, int x, int y, int color )<br />imagefill() 在 image 图像的坐标 x，y（图像左上角为 0, 0）处用 color 颜色执行区域填充（即与 x, y 点颜色相同且相邻的点都会被填充）。</font>
		</p>
		<p>
				<br />
				<font size="2">bool imageline ( resource image, int x1, int y1, int x2, int y2, int color )<br />imageline() 用 color 颜色在图像 image 中从坐标 x1，y1 到 x2，y2（图像左上角为 0, 0）画一条线段。</font>
		</p>
		<p>
				<font size="2">bool imagestring ( resource image, int font, int x, int y, string s, int col )<br />imagestring() 用 col 颜色将字符串 s 画到 image 所代表的图像的 x，y 坐标处（这是字符串左上角坐标，整幅图像的左上角为 0，0）。如果 font 是 1，2，3，4 或 5，则使用内置字体。</font>
		</p>
		<p>
				<font size="2">array imagettftext ( resource image, float size, float angle, int x, int y, int color, string fontfile, string text )<br />本函数比较重要,参数较多,此处不再列出,它主要是写字到图像上,和上面的函数类似,但必前者强大.</font>
		</p>
		<p>
				<font size="2">bool imagefilltoborder ( resource image, int x, int y, int border, int color )<br />imagefilltoborder() 从 x，y（图像左上角为 0, 0）点开始用 color 颜色执行区域填充，直到碰到颜色为 border 的边界为止。【注：边界内的所有颜色都会被填充。如果指定的边界色和该点颜色相同，则没有填充。如果图像中没有该边界色，则整幅图像都会被填充。】</font>
		</p>
		<p>
				<font size="2">bool imagefilledellipse ( resource image, int cx, int cy, int w, int h, int color )<br />imagefilledellipse() 在 image 所代表的图像中以 cx，cy（图像左上角为 0, 0）为中心画一个椭圆。w 和 h 分别指定了椭圆的宽和高。椭圆用 color 颜色填充。如果成功则返回 TRUE，失败则返回 FALSE。</font>
		</p>
		<p>
				<font size="2">输出图像数据:imagepng($image[,$filename])<br /></font>
		</p>
		<p>
				<font color="#ff0000" size="2">例一:输出蓝色背景和交叉白线的图形</font>
		</p>
		<p>
				<font size="2">
				</font> </p>
		<p>
				<font size="2">
				</font>
				<span class="code">
				</span>
		</p>
		<p>
				<font size="2">&lt;?php<br />$width=35;<br />$height=35;<br />//创建对象<br />$image=imagecreate($width,$height);<br />//提取颜色<br />$color_white=imagecolorallocate($image,255,255,255);//白色<br />$color_blue=imagecolorallocate($image,0,0,108);//蓝色<br />imagefill($image,0,0,$color_blue);<br />//作图<br /> //线宽<br />imagesetthickness($image,3);<br />imageline($image,0,0,$width,$height ,$color_white);<br />imageline($image,$width,0,0,$height ,$color_white);</font>
		</p>
		<p>
				<font size="2">//发送对象至头<br />header(content-type:image/png);<br />imagepng($image);<br /> /*<br /> //发送对象至文件<br /> $filename="ex1.png";<br /> imagepng($image,$filename);<br /> */<br />//销毁对象<br />imagedestroy($image);<br />?&gt;</font>
		</p>
		<p>
				<font size="2">
				</font> </p>
		<p>
				<font size="2">
				</font> </p>
		<p>
				<font size="2">输出图象：<img style="FILTER: ; WIDTH: 35px; HEIGHT: 35px" height="35" alt="" hspace="0" src="http://www.comszy.com/UploadFile/200621794418387.png" width="35" border="0" /></font>
		</p>
		<p>
				<font size="2">在线演示: </font>
				<a class="" href="http://www.phzzy.org/temp/5do8/ex1.php" target="_blank">
						<font size="2">http://www.phzzy.org/temp/5do8/ex1.php</font>
				</a>
				<font size="2">
				</font>
		</p>
		<p>
				<font color="#ff0000" size="2">例二: 阴阳图</font>
		</p>
		<p>
				<font size="2">
				</font>
				<span class="code">
				</span>
		</p>
		<p>
				<font size="2">&lt;?php<br />$width=400;<br />$height=400;<br />$image=imagecreatetruecolor($width,$height);<br />//提取颜色<br />$color_black=imagecolorallocate($image,0,2,0);//<br />$color_white=imagecolorallocate($image,255,255,255);//白色<br />$color_blue=imagecolorallocate($image,0,0,108);//蓝色<br />$color_red=imagecolorallocate($image,151,0,4);//红色<br />$color_my=imagecolorallocate($image,192,192,255);//背景<br />$color_temp=imagecolorallocate($image,199,199,199);//背景<br />//作图<br />imagefill($image,0,0,$color_white);</font>
		</p>
		<p>
				<font size="2">//第一个是大圆<br />imagefilledarc ($image,$width/2,$height/2,$height,$height,0,360,$color_blue,IMG_ARC_PIE);<br />//两个小圆<br />imagefilledellipse ($image,$width/2,$height/4 ,$height/2,$height/2,$color_red);<br />imagefilledellipse ($image,$width/2,$height/4 * 3,$height/2,$height/2,$color_blue);<br />/*imagefilledellipse -- 画一椭圆并填充*/<br />imagefilledarc ($image,$width/2,$height/2,$height,$height,-90,90,$color_red,IMG_ARC_PIE);<br />imagefilledellipse ($image,$width/2,$height/4 * 3,$height/2,$height/2,$color_blue);<br />//发送对象至头<br />header(content-type:image/png);<br />imagepng($image);<br /> /*<br /> //发送对象至文件<br /> $filename="ex1.png";<br /> imagepng($image,$filename);<br /> */<br />//销毁对象<br />imagedestroy($image);<br />?&gt;</font>
		</p>
		<p>
				<font size="2">
				</font> </p>
		<p align="center">
				<font size="2">
						<img style="FILTER: ; WIDTH: 400px; HEIGHT: 400px" height="400" alt="" hspace="0" src="http://www.comszy.com/UploadFile/200621794426698.png" width="400" border="0" />
				</font>
		</p>
		<p>
				<font size="2">演示: </font>
				<a class="" href="http://www.phzzy.org/temp/5do8/ex2.php" target="_blank">
						<font size="2">http://www.phzzy.org/temp/5do8/ex2.php</font>
				</a>
				<font size="2">
				</font>
		</p>
		<p>
				<font color="#ff0000" size="2">例三:3D图像--cool</font>
		</p>
		<p>
				<font size="2">
				</font>
				<span class="code">
				</span>
		</p>
		<p>
				<font size="2">&lt;?php<br />$width=400;<br />$height=400;<br />$image = imagecreatetruecolor($width, $height);<br />$white    = imagecolorallocate($image, 0xFF, 0xFF, 0xFF);<br />$gray     = imagecolorallocate($image, 0xC0, 0xC0, 0xC0);<br />$darkgray = imagecolorallocate($image, 0x90, 0x90, 0x90);<br />$navy     = imagecolorallocate($image, 0x00, 0x00, 0x80);<br />$darknavy = imagecolorallocate($image, 0x00, 0x00, 0x50);<br />$red      = imagecolorallocate($image, 0xFF, 0x00, 0x00);<br />$darkred  = imagecolorallocate($image, 0x90, 0x00, 0x00);<br />imagefill($image,0,0,$white);</font>
		</p>
		<p>
				<font size="2">// make the 3D effect<br />for ($i = $height /2 +20; $i &gt; $height /2; $i--) {<br />  imagefilledarc($image, $width/2, $i, $width/2, $height /2, 0, 45, $darknavy, IMG_ARC_PIE);<br />  imagefilledarc($image,  $width/2, $i, $width/2, $height /2, 45, 75 , $darkgray, IMG_ARC_PIE);<br />  imagefilledarc($image,  $width/2, $i, $width/2, $height /2, 75, 360 , $darkred, IMG_ARC_PIE);<br />}</font>
		</p>
		<p>
				<font size="2">imagefilledarc($image, $width/2, $height /2, $width/2, $height /2, 0, 45, $navy, IMG_ARC_PIE);<br />imagefilledarc($image, $width/2, $height /2, $width/2, $height /2, 45, 75 , $gray, IMG_ARC_PIE);<br />imagefilledarc($image, $width/2, $height /2, $width/2, $height /2, 75, 360 , $red, IMG_ARC_PIE);</font>
		</p>
		<p>
				<br />
				<font size="2">// flush image<br />header(Content-type: image/png);<br />imagepng($image);<br />imagedestroy($image);<br /> /*<br /> //发送对象至文件<br /> $filename="ex1.png";<br /> imagepng($image,$filename);<br /> */</font>
		</p>
		<p>
				<font size="2">?&gt;</font>
		</p>
		<p>
				<font size="2">
				</font> </p>
		<p>
				<font size="2">
				</font> </p>
		<p align="center">
				<font size="2">
						<img style="FILTER: ; WIDTH: 400px; HEIGHT: 400px" height="400" alt="" hspace="0" src="http://www.comszy.com/UploadFile/200621794433448.png" width="400" border="0" /> <br /></font>
		</p>
		<p>
				<font size="2">$img_output=ImageCreate(188,170);<br />$color0a = imagecolorallocate($img_output,255,255,255); //白色<br />$color0b = imagecolorallocate($img_output,0,0,0);    //黑色<br />$color1a = imagecolorallocate($img_output,255,0,0);    //红色a<br />$color1b = imagecolorallocate($img_output,200,0,0);    //红色b<br />$color2a = imagecolorallocate($img_output,255,128,64); //橙色a<br />$color2b = imagecolorallocate($img_output,198,64,0);    //橙色b<br />$color3a = imagecolorallocate($img_output,255,255,0); //黄色a<br />$color3b = imagecolorallocate($img_output,200,200,0); //黄色b<br />$color4a = imagecolorallocate($img_output,133,248,18); //绿色a<br />$color4b = imagecolorallocate($img_output,0,200,0);    //绿色b<br />$color5a = imagecolorallocate($img_output,0,0,255);    //蓝色a<br />$color5b = imagecolorallocate($img_output,0,0,200);    //蓝色b<br />演示: </font>
				<a class="" href="http://www.phzzy.org/temp/5do8/ex3.php" target="_blank">
						<font size="2">http://www.phzzy.org/temp/5do8/ex3.php</font>
				</a>
				<font size="2">  </font>
		</p>
<img src ="http://www.blogjava.net/lantin/aggbug/90564.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lantin/" target="_blank">花之剑</a> 2006-12-28 19:05 <a href="http://www.blogjava.net/lantin/articles/90564.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>