9core.com - 九核技术交流网

九百链
为了更好的解决实际工作中遇到的问题,本站开设了QQ群 ASP+PHP+JSP+.NET①:9793624
ASP+PHP+JSP+.NET②:17775294
网站通告: 新开设QQ群,群号:17775294 九核WEB技术专业论坛 官方QQ群 9793624
搜索: 您的位置主页> 程序开发 > Php技术 >
  • 2008-09-09利用PHP+JavaScript打造AJAX搜索窗
  • 一、引言Web世界中一项广为使用的功能就是搜索。随着Web技术的日益发展,为了更好地满足客户的需求,常规搜索引擎开始对更多的非常规方式"敞开了大门"。在这方面,Yahoo!率先提供出其Y!Q服务。这个新的服务能够使你搜索任何web页面,前提是该页面的作者必须包括在他们的web页面中。是服务技术实现了把相关的搜索结果呈现到读者眼前,从而向读者展示更多的信息而不必离开他们的当前页面。Yahoo!的Y!Q服务的确是一个伟大的想法,但是它的出现也受到了一些批评。原因何在?首先,它要求客户端必须使用Yahoo!的JavaScript并且你必须添加一个<form/>元素,以便满足Yahoo!的搜索要求。对于许多网站作者来说,提供该服务要求付出太多的努力。并且,在所有这些条件满足之后,搜索结果将以Yahoo!风格展现,从而破坏了用户网站的外观感觉。幸运的是,Yahoo!并非唯一的提供"从你的网站提供搜索结果"服务的搜索引擎。MSNSearch也提供一种类似服务,除了它能够使web开发者控制外观感觉以外。这种能力来自于MSNSearch提供它的搜索结果的RSS版本,从而使得订阅一个特定的搜索或使用Aj .... [阅读全文]
  • 来源:互联网作者:
  • 2008-09-09使用PHP和AJAX的XML编程
  • 在SOA架构中,程序员经常使用XML在应用程序之间交换结构化和半结构化的数据。XML及其相关技术—文档对象模型(DocumentObjectModel,DOM)、XPath、HTTP、XQuery和可扩展样式表语言转换(ExtensibleStylesheetLanguageTransformations,XSLT)—为快速应用程序开发提供了一个强大的环境。构建在这些技术之上的应用程序将占用更小的内存空间,需要更低的维护成本,同时又拥有更高的品质和灵活性。DB2和其他关系数据库的XML方面的特性已经相当成熟,因此除了存储和管理关系数据之外,它们还是存储和管理XML数据的理想选择。DB29XML支持(称为pureXML)提供了以纯XML的形式(换句话说,就是带注释的、树型的分层存储)存储XML的能力。在DB29中,XML数据可以用XML模式索引,可以从关系数据组合而成,可以分解为关系数据,可以查询和转换,可以独立发布,或者通过混合使用SQL/XML和XQuery与关系数据组合起来。Web浏览器也正在为客户机脚本提供更多的功能来有效地处理XML。通过使用异步Java .... [阅读全文]
  • 来源:互联网作者:
  • 2008-09-09PHP中使用crypt()实现用户身份验证
  • 在开发PHP应用中如果不想自己开发新的加密算法,还可以利用PHP提供的crypt()函数来完成单向加密功能。了解crypt()只要有一点使用非Windows平台经验的读者都可能对crypt()相当熟悉,这一函数完成被称作单向加密的功能,它可以加密一些明码,但不能反过来将密码重新转换为原来的明码。crypt()函数定义如下。stringcrypt(stringinput_string[,stringsalt])其中,input_string参数是需要加密的明文字符串,第二个可选的salt是一个位字串,能够影响加密的暗码,进一步排除被破解的可能性。缺省情况下,PHP使用一个2个字符的DES干扰串,如果系统使用的是MD5(参考下一节内容),PHP则会使用一个12个字符的干扰串。可以通过执行下面的命令发现系统将要使用的干扰串的长度。print"Mysystemsaltsizeis:".CRYPT_SALT_LENGTH;crypt()支持4种加密算法,表19.1显示了其支持的算法和相应的salt参数的长度。表crypt()支持四种加密算法   算法&nb .... [阅读全文]
  • 来源:互联网作者:
  • 2008-09-09PHP+MySQL应用中使用XOR运算加密算法
  • 本文将介绍一个简单易用的加密/解密算法:使用异或(XOR)运算。本算法原理简单,旨在使读者对信息的加密/解密有一个更加直观的印象。XOR算法原理从加密的主要方法看,换位法过于简单,特别是对于数据量少的情况很容易由密文猜出明文,而替换法不失为一种行之有效的简易算法。从各种替换法运算的特点看,异或运算最适合用于简易加解密运算,这种方法的原理是:当一个数A和另一个数B进行异或运算会生成另一个数C,如果再将C和B进行异或运算则C又会还原为A。相对于其他的简易加密算法,XOR算法的优点如下。(1)算法简单,对于高级语言很容易能实现。(2)速度快,可以在任何时候、任何地方使用。(3)对任何字符都是有效的,不像有些简易加密算法,只对西文字符有效,对中文加密后再解密无法还原为原来的字符。XOR算法实现上一部分介绍了如何使用XOR运算进行加密/解密的原理,本节将使用其加密用户的登录信息。根据上一小节介绍的XOR加密算法的原理,不难写出以下的加密解密函数。首先列出加密算法。 1<!--encrypy_xor:简单使用XOR运算的加密函数----------------------->2<?php .... [阅读全文]
  • 来源:互联网作者:
  • 2008-09-09PHP5 OOP编程中的代理与异常定制
  • 一、DBQuery对象现在,我们的DBQuery对象简单地模仿一个存储过程—一旦被执行,即返回一个必须进行保存的结果资源;并且如果你想使用该结果集上的函数(例如num_rows()或fetch_row())的话,你必须传递MySqlDB对象。那么,如果由DBQuery对象来实现MySqlDB对象(其设计目的是对一个执行查询的结果进行操作)实现的函数,效果如何呢?让我们继续使用上一篇示例中的代码;并且让我们假定,现在由DBQuery对象管理我们的结果资源。DBQuery类的源码如列表1所示。列表1.使用DBQuery类。 require'mysql_db.php';require_once'query.php';$db=newMySqlDb;$db->connect('host','username','pass');$db->query('usecontent_management_system');$query=newDBQuery($db);$query->prepare('SELECTfname,snameFROMusersWHEREuse .... [阅读全文]
  • 来源:互联网作者:
  • 2008-09-09PHP5 OOP编程之代理与定制异常
  • 一、DBQuery对象JSBGBrzFEA4ekxDvi6u2qwWG1SmwuivokOiVFtSc现在,我们的DBQuery对象简单地模仿一个存储过程—一旦被执行,即返回一个必须进行保存的结果资源;并且如果你想使用该结果集上的函数(例如num_rows()或fetch_row())的话,你必须传递MySqlDB对象。那么,如果由DBQuery对象来实现MySqlDB对象(其设计目的是对一个执行查询的结果进行操作)实现的函数,效果如何呢?让我们继续使用上一篇示例中的代码;并且让我们假定,现在由DBQuery对象管理我们的结果资源。DBQuery类的源码如列表1所示。列表1.使用DBQuery类。JSBGBrzFEA4ekxDvi6u2qwWG1SmwuivokOiVFtSc  require'mysql_db.php';require_once'query.php';$db=newMySqlDb;$db->connect('host','username','pass');$db->query .... [阅读全文]
  • 来源:互联网作者:
  • 2008-09-09WAP与PHP程序设计之基础篇
  • WAP的发展离不开其WWW的底蕴,毕竟,整个WAP协议的制定参照了WWW的模型,并且尽可能地沿用了Internet的诸多标准和技术,如WML语言脱胎于HTML与XML,WMLScript与传统的脚本语言也很相似。的确,WAP虽然是个新名词,但是它却与传统的国际互联网密不可分地结合着,在结构上如此,在技术上更是如此。QO486OGE8JaEQ52Eo6rTB2IhWPetqVNkhZWQoV1K在WAP协议中提到WAP页面所使用的标记语言为WML,当需要进行较高级的操作,如使用终端机的某些资源时,可以使用WMLScript脚本语言,这两种语言很简单,甚至可以用简陋来形容,特别是它们对数据库的操作几乎无能为力,这种"缺陷"与WAP广阔的商务和应用前景格格不入,但我们并不是无能为力的,由于WAP和WWW的交融,我们仍然可以使用WWW的技术与资源来解决数据库的访问问题,因为毕竟多数数据库仍处于有线网络内。QO486OGE8JaEQ52Eo6rTB2IhWPetqVNkhZWQoV1K目前最流行的网页编程语言和数据库的搭配是什么?相信很多人会说出"PHP" .... [阅读全文]
  • 来源:互联网作者:
  • 2008-09-09PHPUnit袖珍指南之命令行测试工具
  • PHPUnit命令行测试工具是通过phpunit命令调用的。如下代码显示如何通过PHPUnit命令行测试工具运行测试。 phpunitArrayTestPHPUnit2.3.0bySebastianBergmann.Time:0.067288OK(2tests)对每个测试,PHPUnit命令行测试工具打印一个字符表示进程:·测试成功打印“.”。·运行测试方法是发生了断言失败打印“F”。·运行测试方法是发生了错误打印“E”。·测试没有完成或测试没有实现打印“I”(见本书后“未完成的测试”一章)。PHPUnit可以区分失败和错误。一个失败是PHPUnit的断言违例,错误是一个意料外的异常或一个PHP错误。有时候这种差别是有用的,因为错误相比失败更容易修正。如果你有一大串问题列表,最好先解决所有错误,然后看看有没有失败遗留下来。让我们看看如下一些代码命令行测试工具的选项:   phpuni .... [阅读全文]
  • 来源:互联网作者:
  • 2008-09-09通过PHP和Sajax使用Ajax之JavaScript
  • 多年以来,创建真正具有响应性的Web应用程序这一目标一直被Web开发的一个简单事实所阻碍:要改变页面某一部分的信息,用户就必须重载整个页面。但是以后不再会这样了。感谢异步Java?脚本和XML(Ajax),我们现在可以从服务器端请求新内容,只修改页面的一部分。这个教程解释了如何把Ajax用于PHP,并介绍了简单Ajax工具包(Sajax),这是一个用PHP编写的工具,可以把服务器端PHP与JavaScript集成。开始之前这份教程针对的是对于开发富Web应用程序感兴趣的人,富Web应用程序把异步JavaScript和XML(Ajax)与PHP结合起来,用户每次点击时,不必刷新整个页面,就可以动态更新内容。这份教程假设读者了解基本的PHP概念,包括if和switch语句以及函数的使用。关于本教程在本教程中,将学习Ajax以及围绕它的应用的问题。将用PHP构建一个Ajax应用程序,显示以前写的一个教程中的面板。点击面板链接只会重新载入内容区,并用选定面板的内容替换它,从而节约了带宽和页面装入的时间。然后将把简单Ajax工具包(Sajax)集成进Ajax应用程序,它可以同步Ajax的使用,从 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-09-09PHPUnit袖珍指南之安装PHPUnit
  • 到此PHPUnit可以通过PHP扩展和程序库(PEAE)获得。PEAR是可重用PHP组件的框架和分发系统。安装PHPUnit可以通过PEAR安装程序命令获得:pearinstallPHPUnit2根据PEAR的版本命名标准,适用于PHP5的PHPUnit包称为PHPUnit2。PHPUnit是适用于PHP4的包,这在本书后面关于“在PHP4中使用PHPUnit”一章会提到。安装只有,能够在本地的PEAR目录中找到PHPUnit的源代码,路径通常是/usr/lib/php/PHPUnit2。尽管使用PEAR安装程序是PHPUnit唯一支持的安装方法,但你还是可以手工安装。要手工安装,参照以下做法:1.从http://pear.php.net/package/PHPUnit2/download下载PHPUnit发布包,然后解压缩,确保目录在php.ini定义的include_path中。2.准备phpunit脚本a.将pear-phpunit脚本改名为phpunitb.将脚本中所有的@php_bin@改名为PHP命令行解释器所在的目录(通常为/usr/bin/php .... [阅读全文]
  • 来源:互联网作者:
  • 2008-08-10PHP与正则表达系列之一: PHP中的正则表达式
  • 今天起,会开始弄一个PHP教程系列文章. 主要是针对正则表达式的。 M30NQvThxctjBayefMYTwsrPDR4ChBWg0Pqg9R7J大概的内容排序是这样安排的: M30NQvThxctjBayefMYTwsrPDR4ChBWg0Pqg9R7J1.  PHP 中的正则表达式M30NQvThxctjBayefMYTwsrPDR4ChBWg0Pqg9R7J2.  八个实用的PHP正则表达式M30NQvThxctjBayefMYTwsrPDR4ChBWg0Pqg9R7J3.  如何书写更易阅读的PHP正则表达式M30NQvThxctjBayefMYTwsrPDR4ChBWg0Pqg9R7J4.  半小时精通正则表达式M30NQvThxctjBayefMYTwsrPDR4ChBWg0Pqg9R7J5.  正则在文章采集系统中的应用及常见问题答疑M30NQvThxctjBayefMYTwsrPDR4ChBWg0Pqg9R7J6.  ...更多策划中M30NQvThxctjBayefMYTwsrPDR4ChBWg0Pqg9R .... [阅读全文]
  • 来源:PHP5研究室作者:
  • 2008-07-31PHP读取RSS feed源代码(带注释,可读取多个源)
  • 因为网站需要读取不同来源的rss feed,写了一个php程序来循环读取rss feed,为了方便阅读及了解程序实现过程,加上了注释,和大家共同学习。而助易网的rss读取就是在这个程序的基础上稍做改造而成,主要是输出了一个数组字符串以及解决编码问题。5wqq4oALcYZYqlWWgjIHx7FLuGgQ71BlxTNTmO1Jphp源代码及代码详细解释如下:5wqq4oALcYZYqlWWgjIHx7FLuGgQ71BlxTNTmO1J <?phpx7FLuGgQ71BlxTNTmO1Jx7FLuGgQ71BlxTNTmO1J//RSS源地址列表数组x7FLuGgQ71BlxTNTmO1Jx7FLuGgQ71BlxTNTmO1J$rssfeedx7FLuGgQ71BlxTNTmO1J = x7FLuGgQ71BlxTNTmO1Jarrayx7FLuGgQ71BlxTNTmO1J(x7FLuGgQ71BlxTNTmO1J"x7FLuGgQ71BlxTNTmO1Jhttp://www.chinaz.co .... [阅读全文]
  • 来源:肥龙龙博客作者:
  • 2008-07-30PHP开发大型项目的方法:OOP思想
  • 面向对象编程的概念: uQcdih7qnWC3diDaT56VM8OeTyn5gfd2wRYHTyaf不同的作者之间说法可能不一样,但是一个OOP语言必须有以下几方面: uQcdih7qnWC3diDaT56VM8OeTyn5gfd2wRYHTyaf抽象数据类型和信息封装、继承、多态uQcdih7qnWC3diDaT56VM8OeTyn5gfd2wRYHTyaf在PHP中是通过类来完成封装的: uQcdih7qnWC3diDaT56VM8OeTyn5gfd2wRYHTyaf代码: uQcdih7qnWC3diDaT56VM8OeTyn5gfd2wRYHTyaf <?php class Something { // 在OOP类中,通常第一个字符为大写 var $x; function setX($v) { // 方法开始为小写单词,然后使用大写字母来分隔单词,例如getValueOfArea() $this->x=$v; } function getX() { return $this->x; } } ?> .... [阅读全文]
  • 来源:互联网作者:
  • 2008-07-30动态网页制作PHP常用的正则表达式
  • 匹配中文字符的正则表达式: [\u4e00-\u9fa5] DSdkyCE9qJZ5PLnDxgV9W3JRfmiANJHIJuwtIQzn匹配双字节字符(包括汉字在内): DSdkyCE9qJZ5PLnDxgV9W3JRfmiANJHIJuwtIQzn [^\x00-\xff] DSdkyCE9qJZ5PLnDxgV9W3JRfmiANJHIJuwtIQzn应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)DSdkyCE9qJZ5PLnDxgV9W3JRfmiANJHIJuwtIQzn String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;} DSdkyCE9qJZ5PLnDxgV9W3JRfmiANJHIJuwtIQzn匹配空行的正则表 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-07-29实现dedecms图集单击图片翻页的功能
  • 题记:在很多相册的网站中,都有这样的功能:当图片分多页显示的情况下,点击图片会自动翻页到下一张图片,接下来我们在dedecms4中实现这个功能。以下是实现方法:1、为了实现这个功能,我们首先需要获得图片页面的当前页码和总页码 编辑include/inc_archives_view.php文件AUVhvH0A3eW1K9dSgjIfb58oT2ZNnY3EVuNTgp67(1)找到function ParseDMFields,修改为:AUVhvH0A3eW1K9dSgjIfb58oT2ZNnY3EVuNTgp67 functionb58oT2ZNnY3EVuNTgp67 b58oT2ZNnY3EVuNTgp67ParseDMFieldsb58oT2ZNnY3EVuNTgp67(b58oT2ZNnY3EVuNTgp67$pageNob58oT2ZNnY3EVuNTgp67,b58oT2ZNnY3EVuNTgp67$ismakeb58oT2ZNnY3EVuNTgp67=b58oT2ZNnY3EVuNTgp671b58oT2ZNnY3EVuNTg .... [阅读全文]
  • 来源:肥龙龙博客作者:
  • 2008-07-29dedecms5.1升级sp1出现IfTagNull()错误解决方法记录
  • 最近有报告错误说从dedecms5.1升级sp1出现错误,代码大致如下:tT2zSkOUvaexHReEoZhAt2oYimThzgrDJstaY0LT Fatal error: Call to undefined function IfTagNull() in /……/include/pub_dedetag.php(485) : eval()’d code on line 1 tT2zSkOUvaexHReEoZhAt2oYimThzgrDJstaY0LT分析错误原因,是因为模板中调用了IfTagNull函数而程序中找不到这个函数导致出错,解决的办法很简单,两种,这里记录一下:tT2zSkOUvaexHReEoZhAt2oYimThzgrDJstaY0LT1、修改article_article.htm模板,把{dede:tag type=’current’ function=’IfTagNull(@me)’/} 换回原来的{ded .... [阅读全文]
  • 来源:肥龙龙博客作者:
  • 2008-07-28PHP教程:PHP编码书写规范
  • 1 文件结构 ||――images|――include  |――parameter  |――config  |――function|――index t07v35UhsAwKpYqC4Gwb3K4IzHWg24uKd2XeoXfJimages存放图片文件,include中是系统是要引用的文件,一般在parameter中存放参数文件,config中存放配置文件,function中存放方法文件,如javascript的方法等,并按功能模块的分类,将各功能的类也放入其中。t07v35UhsAwKpYqC4Gwb3K4IzHWg24uKd2XeoXfJ2 文件名 t07v35UhsAwKpYqC4Gwb3K4IzHWg24uKd2XeoXfJ文件夹命名一般采用英文,长度一般不超过20个字符,命名采用小写字母。除特殊情况才使用中文拼音,一些常见的文件夹命名如:images(存放图形文件),flash(存放Flash文件),style(存放CSS文件),scripts(存放Javascript脚本),inc(存放include文件 .... [阅读全文]
  • 来源:中国php联盟作者:
  • 2008-07-22PHP中addcslashes函数与stripcslashes的用法
  • 今天在写一个网站的英文版时,写完后填加英文资料,我随便填写时一点问题没有,但每当填加指定的内容时却填加不上,也不报错,我查看了数据库,发现这个字段用的是“TEXT”数据数型,我以为是内容过长的原因,于是我把数据类型改成了“longtext”,但提交时发现还是出现同样的问题。Ip5woDmzh20wLaPkifdHTXSG9ZH6RbygkIinHsJM后来请教同事,同事发现在是英文中带标点“'”的原因,MySQL执行到此处后自动认为语句结束,所以才填加不上。既然找出来了问题那就得找出对应的解决方法,那就是在文本内容中的“'”前全部加上转义字符“\”,正好PHP中提供了自动在字符串中加入或去除转义字符的函数addcslashes和stripcslashes,于是加上测试后,果然问题解决!由此可见,我平日写程序时不够严禁,总是会忽略这样那样的细节问题,如果被HACKER发现这些问题加一利用,网站基本就OVER了,所以大家一定要引以为戒,不要和我犯同样的错误哦。Ip5woD .... [阅读全文]
  • 来源:shuro's blog作者:
  • 2008-07-21PHP.MVC的模板标签系统
  • PHP.MVC的模板标签系统(PhpMVC_Tags)现在提供了3种类型的标签:包含指令,声明和表达式.包含指令能让我们将内容分隔为许多模块,比如:页眉,页脚或者内容.包含的页面可以是HTML,或者其他标签模板页.据个例子,下面的包含指令能用来包含一个页眉:SttWniF9GLVzYDrhG4meLgvVBIrtkMZPjeq07rcq <@ include 'pageHeader.ssp' @> SttWniF9GLVzYDrhG4meLgvVBIrtkMZPjeq07rcq声明允许我们在模板种声明一个页面级别的变量,或者甚至其他包含页面.一个声明看起来像以下代码:SttWniF9GLVzYDrhG4meLgvVBIrtkMZPjeq07rcq <@ salesAreaID = "Central District" @> SttWniF9GLVzYDrhG4meLgvVBIrtkMZPjeq07rcq表达式 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-07-17mysql 时间转换函数的用法
  • mysql 时间转换函数的用法2007-10-31 15:03DAYOFWEEK(date)  返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。  mysql> select DAYOFWEEK(2007-10-31);  -> 41hUhkvI99i5rVP4hoPofs651VxRkrdbQfIEObNl81hUhkvI99i5rVP4hoPofWEEKDAY(date)  返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。  mysql> select WEEKDAY('2007-10-31 13:05:00');  -> 2mysql> select WEEKDAY('2007-10-31');-> 2  1hUhkvI99i5rVP4hoPofs651VxRkrdbQfIEObNl81hUhkvI99i5rVP4hoPofDAYOFMONTH( .... [阅读全文]
  • 来源:DayGood作者:
共有338条记录,17页,当前第 21 2 3 4 5 6 7 8 9 10 >>
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助