<?php require_once(''Connections/conn.php''); ?>
<?php
$colname_rs = $_GET[''key'']; //获得用户输入
$result = explode('','',$_GET[''key'']);//分解用户输入的多个关键词,存入$result数组
mysql_select_db($database_conn, $conn); //连接数据库
//根据多个关键词构建SQL语句
$query_rs = "SELECT * FROM (";
for($i=0;$i<count($result);$i++) //根据每个搜索关键词构建SQL语句
{
if($i==0) //对第一个关键词,不使用UNION
$query_rs .= "SELECT * FROM searchtable WHERE title LIKE ''%$result[0]%''
OR content LIKE ''%$result[0]%''";
else //对其他关键词,使用UNION连接
$query_rs .= " UNION SELECT * FROM searchtable WHERE title LIKE
''%$result[$i]%'' OR content LIKE ''%$result[$i]%''";
}
$query_rs .= ") T ORDER BY last_access DESC"; //对搜索结果排序
//执行SQL语句
$rs = mysql_query($query_rs, $conn) or die(mysql_error());
$row_rs = mysql_fetch_assoc($rs);
$totalRows_rs = mysql_num_rows($rs);
  SQL注入是网络攻击的一种常见手法,攻击者通过对页面中的SQL语句进行拼组来获得管理账号、密码及更多的其他信息。这种攻击
SQL注入攻击的一般方法
<?php
$id = $_GET[''id'']; //获得参数
$sql = "SELECT * FROM posts WHERE postid = $id"; //定义SQL
mysql_connect("localhost", "root"); //连接服务器
mysql_select_db("guestbook"); //连接数据库
$rs = mysql_query($sql); //执行SQL
if(mysql_numrows($rs)) //如果记录存在,则输出
{
$row_rs = mysql_fetch_assoc($rs);
echo "TOPIC: ".$row_rs[''topic'']."<br>";
}
else  
在参与了几个大型PHP项目,写了很多PHP代码以后,我发现很多工具可以提高代码质量,简化发布,使得做为PHP开发人员的生涯变得轻松许多。许多这样的工具可能已经为大家所用。但是,由于一些人甚至没有注意到这些工具的存在,我会从此开始,好了,不说废话,下面是我认为所有PHP程序员应该知道的工具列表。 Phing - 一个项目构建系统
Phing 是一个基于Apache ANT 的项目构建系统。它的名字是一个拗口的语句首字母缩写 - PHing Is Not GNU make 。Phing可以做传统构建系统比如 GNU make 能做的任何事情,同时没有陡峭的学习曲线。
在phing(以及其他的构建系统)背后的思想是评估一系列相关性,然后执行一系列PHP类去正确的安装和配置一个应用系统。构建过程用一个简单的XML配置文件控制。Out of the box,phing内置可以执行一系列替换(比如:在你的开发版本和产品版本间改变include路径)、执行SQL语句、移动和复制文件、运行外部脚本等等。通过扩展包含在发行包中的“task”类,你也可以创造自己的定制任务。
对任何需要在超过一台服务器上部署大型PHP应用的人来世,Phing是一个无价之宝。同时我发现它对简单的PHP脚本也是很有用的。
Xdebug - 调试和分析工具
<?php
if (mb_ereg("^[w-.]{1,32}$", $str)) {
echo ''yes'';
} else {
echo ''no'';
}
?>1. $In 要截取的字符串, $num要截取的长度, 返回截取的字符串
public function substrGB($in,$num)
{
//$num=16;
$pos=0;
$byteNum=0;
$out="";
while($num){
$c=mb_substr($in,$pos,1,"EUC-JP");
if($c=="n") break;
if(strlen($c)==1){
$pos++;
$byteNum++;
if($byteNum>$num) break;
$out.=$c;
}
else
{
$pos++;
$byteNum=$byteNum+2;
if($byteNum>$num) break;
$out.=$c;
}
}
return $out;
}上一篇: 关于PHP接口的学习下一篇: php扩展