<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/">
<channel>
<title><![CDATA[网络部团队]]></title>
<link>http://www.mjrj.cn/about/index.php/feed/</link>
<language>zh-cn</language>
<description><![CDATA[Just Do It]]></description>
<pubDate>Mon, 21 May 2012 10:46:14 +0800</pubDate>
<item>
<title><![CDATA[php中magic_quotes_gpc的一些认识]]></title>
<link>http://www.mjrj.cn/about/index.php/archives/5/</link>
<pubDate>Thu, 27 Aug 2009 04:07:08 +0000</pubDate>
<category><![CDATA[php相关]]></category>
<description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;昨天，在做一个新生专题页文章发表时，遇到一些问题。图片插入后，本机测试可以。但是传到空间服务器上就有问题了，图片显示不出来。最后用phpmyadmin查...]]></description>
<guid>http://www.mjrj.cn/about/index.php/archives/5/</guid>
<slash:comments0/>
<comments>http://www.mjrj.cn/about/index.php/archives/5/#comments</comments>
<content:encoded><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;昨天，在做一个<a href="http://www.mjrj.cn/freshman/">新生专题页</a>文章发表时，遇到一些问题。图片插入后，本机测试可以。但是传到空间服务器上就有问题了，图片显示不出来。最后用phpmyadmin查看插入表里面的数据，才发现问题。本机上插入的数据""没有被转义，空间服务器插入的数据""都被转义了，难怪会出问题。接着我看了下本机和空间服务器上php的配置，发现本机上magic_quotes_gpc=off，而空间服务器上magic_quotes_gpc=on。本机上magic_quotes_gpc=off，插入的数据用函数addcslashes()处理后，显示没问题。而空间服务器上magic_quotes_gpc=on，数据也用函数addcslashes()处理，就有问题了。最后把函数addcslashes()出掉，就ok了。</p><p><strong>下面对php.ini中的magic_quotes_gpc配置，做下相信介绍。</strong></p><!--more--><br /><p>1. <br />条件： magic_quotes_gpc=off <br />写入数据库的字符串未经过任何过滤处理。从数据库读出的字符串也未作任何处理。</p><p>数据：  $data="snow''''sun" ; (snow和sun之间是四个连续的单引号).</p><p>操作： 将字符串:"snow''''sun" 写入数据库，</p><p>结果： 出现sql语句错误，mysql不能顺利完成sql语句，写入数据库失败。</p><p>数据库保存格式：无数据。</p><p>输出数据格式：无数据。</p><p>说明： 对于未经处理的单引号在写入数据库时会使sql语句发生错误。</p><br /><p>2. <br />条件： magic_quotes_gpc=off <br />写入数据库的字符串经过函数addlashes()处理。从数据库读出的字符串未作任何处理。</p><p>数据：  $data="snow''''sun" ; (snow和sun之间是四个连续的单引号).</p><p>操作： 将字符串:"snow''''sun" 写入数据库，</p><p>结果： sql语句顺利执行，数据成功写入数据库</p><p>数据库保存格式：snow''''sun (和输入一样)</p><p>输出数据格式：snow''''sun (和输入一样)</p><p>说明： addslashes()函数将单引号转换为\'的转义字符使sql语句成功执行， <br />但\'并未作为数据存入数据库，数据库保存的是snow''''sun 而并不是我们想象的snow\'\'\'\'sun</p><p>3. <br />条件： magic_quotes_gpc=on <br />写入数据库的字符串未经过任何处理。从数据库读出的字符串未作任何处理。</p><p>数据：  $data="snow''''sun" ; (snow和sun之间是四个连续的单引号).</p><p>操作： 将字符串:"snow''''sun" 写入数据库，</p><p>结果： sql语句顺利执行，数据成功写入数据库</p><p>数据库保存格式：snow''''sun (和输入一样)</p><p>输出数据格式：snow''''sun (和输入一样)</p><p>说明： magic_quotes_gpc=on 将单引号转换为\'的转义字符使sql语句成功执行， <br />但\'并未作为数据入数据库，数据库保存的是snow''''sun而并不是我们想象的snow\'\'\'\'sun。</p><p>4. <br />条件： magic_quotes_gpc=on <br />写入数据库的字符串经过函数addlashes()处理。从数据库读出的字符串未作任何处理。</p><p>数据：  $data="snow''''sun" ; (snow和sun之间是四个连续的单引号).</p><p>操作： 将字符串:"snow''''sun" 写入数据库，</p><p>结果： sql语句顺利执行，数据成功写入数据库</p><p>数据库保存格式：snow\'\'\'\'sun (添加了转义字符)</p><p>输出数据格式：snow\'\'\'\'sun (添加了转义字符)</p><p>说明： magic_quotes_gpc=on 将单引号转换为\'的转义字符使sql语句成功执行， <br />addslashes又将即将写入数据库的单引号转换为\',后者的转换被作为数据写入 <br />数据库，数据库保存的是snow\'\'\'\'sun</p><p>总结如下：</p><p>1. 对于magic_quotes_gpc=on的情况，</p><p>我们可以不对输入和输出数据库的字符串数据作 <br />addslashes()和stripslashes()的操作,数据也会正常显示。</p><p>如果此时你对输入的数据作了addslashes()处理， <br />那么在输出的时候就必须使用stripslashes()去掉多余的反斜杠。</p><p>2. 对于magic_quotes_gpc=off 的情况</p><p>必须使用addslashes()对输入数据进行处理，但并不需要使用stripslashes()格式化输出 <br />因为addslashes()并未将反斜杠一起写入数据库，只是帮助mysql完成了sql语句的执行。</p><br /><p>补充：</p><p>magic_quotes_gpc 作用范围是：ＷＥＢ客户服务端；作用时间：请求开始时，例如当脚本运行时．<br />magic_quotes_runtime 作用范围：从文件中读取的数据或执行exec()的结果或是从ＳＱＬ查询中得到的；作用时间：每次当脚本访问运行状态中产生的数据</p><p>原文参考:    <a href="http://www.blankyao.cn/php-magic_quotes_gpc.html#comment-19720">http://www.blankyao.cn/php-magic_quotes_gpc.html#comment-19720</a></p>]]></content:encoded>
<author><![CDATA[网络部]]></author>
<dc:creator><![CDATA[网络部]]></dc:creator>
<wfw:commentRss>http://www.mjrj.cn/about/index.php/feed/archives/5/</wfw:commentRss>
</item>
<item>
<title><![CDATA[如何快速定位页面中复杂 CSS BUG 问题]]></title>
<link>http://www.mjrj.cn/about/index.php/archives/4/</link>
<pubDate>Wed, 19 Aug 2009 15:17:35 +0000</pubDate>
<category><![CDATA[前端技术]]></category>
<description><![CDATA[&nbsp; &nbsp; &nbsp; &nbsp;相信大家对于常见 CSS BUG 的处理已经相对比较熟悉，例如：IE6 Three Pixel Gap、IE5/6 Doubled Float-M...]]></description>
<guid>http://www.mjrj.cn/about/index.php/archives/4/</guid>
<slash:comments0/>
<comments>http://www.mjrj.cn/about/index.php/archives/4/#comments</comments>
<content:encoded><![CDATA[<p>&nbsp; &nbsp; &nbsp; &nbsp;相信大家对于常见 CSS BUG 的处理已经相对比较熟悉，例如：IE6 Three Pixel Gap、IE5/6 Doubled Float-Margin Bug 等等。但时常我们也会碰到复杂的 CSS BUG 问题，所谓&ldquo;复杂&rdquo;实质是指触发的条件很复杂，而&ldquo;BUG&rdquo; 也并非指一定是浏览器的 BUG 。对于此类问题，我们首先要解决的是如何定位到问题，只有快速的定位到问题，才能更好的解决问题。</p><p>&nbsp; &nbsp; &nbsp; &nbsp;对于快速定位，个人的经验处理一般如下（基本可以定位到我在 淘宝 遇到的 90% 以上的复杂 CSS BUG 问题）：</p><p>&nbsp; &nbsp; &nbsp; 1、检查页面的标签是否闭合</p><p>&nbsp; &nbsp; &nbsp; &nbsp;不要小看这条，也许折腾了你两天都没有解决的 CSS BUG 问题，却仅仅源于这里。毕竟页面的模板一般都是由开发来嵌套的，而他们很容易犯此类问题。</p><p>快捷提示：可以用 Dreamweaver 打开文件检查，一般没有闭合的标签，会黄色背景高亮。<!--more--></p><p>&nbsp; &nbsp; &nbsp; &nbsp;2、样式排除法</p><p>&nbsp; &nbsp; &nbsp; &nbsp;有些复杂的页面也许加载了 N 个外链 CSS 文件，那么逐个删除 CSS 文件，找到 BUG 触发的具体 CSS 文件，缩小锁定的范围。</p><p>对于刚才锁定的问题 CSS 样式文件，逐行删除具体的样式定义，定位到具体的触发样式定义，甚至是具体的触发样式属性。</p><p>&nbsp; &nbsp; &nbsp; 3、模块确认法</p><p>&nbsp; &nbsp; &nbsp; 有时候我们也可以从页面的 HTML 元素出发。删除页面中不同的 HTML 模块，寻找到触发问题的 HTML 模块。</p><p>&nbsp; &nbsp; &nbsp; 4、检查是否清除浮动</p><p>&nbsp; &nbsp; &nbsp; 其实有不少的 CSS BUG 问题是因为没有清除浮动造成的。养成良好的清除浮动的习惯是必要的，推荐使用 无额外 HTML 标签的清除浮动的方法（尽量避免使用 overflow:hidden;zoom:1 的类似方法来清除浮动，会有太多的限制性）。</p><p>&nbsp; &nbsp; &nbsp; 5、检查 IE 下是否触发 haslayout</p><p>&nbsp; &nbsp; &nbsp; 很多的 IE 下复杂 CSS BUG 都与 IE 特有的 haslayout 息息相关。熟悉和理解 haslayout 对于处理复杂的 CSS BUG 会事半功倍。推荐阅读 old9 翻译的 《On having layout》（如果无法翻越穿越伟大的 GFW，可阅读 蓝色上的转帖 ）</p><p>&nbsp; &nbsp; &nbsp; 快捷提示：如果触发了 haslayout，IE 的调试工具 IE Developer Toolbar 中的属性中将会显示 haslayout 值为 -1。</p><p>&nbsp; &nbsp; &nbsp; &nbsp;6、边框背景调试法</p><p>&nbsp; &nbsp; &nbsp; &nbsp;故名思议就是给元素设置显眼的边框或者背景（一般黑色或红色），进行调试。此方法是最常用的调试 CSS BUG 的方法之一，对于复杂 BUG 依旧适用。经济实惠还环保^^</p><p>&nbsp; &nbsp; &nbsp; &nbsp;最后想给大家强调一点的是，养成良好的书写习惯，减少额外标签，尽量语义，符合标准，其实可以为我们减少很多额外的复杂 CSS BUG，更多的时候其实是我们自己给自己制造了麻烦。希望大家远离 BUG ，生活越来越美好。</p>]]></content:encoded>
<author><![CDATA[网络部]]></author>
<dc:creator><![CDATA[网络部]]></dc:creator>
<wfw:commentRss>http://www.mjrj.cn/about/index.php/feed/archives/4/</wfw:commentRss>
</item>
</channel>
</rss>
