📄 search.php
字号:
<?php
// 包含头文件和数据库连接文件
require ('dbconnect.php');
include('head.php');
?>
<?
// 得到参数
$title=$_POST['title'];
$content=$_POST['content'];
$select=$_POST['select'];
// print $select;
// 去除后面的空格
$title=trim($title);
$content=trim($content);
// 如果查询条件只是一些空格,退出
if ($title=="" && $content==""){
echo "查询条件为空,<a href='search_input.php'>请输入查询条件!</a>";
exit();
}
// 如果有标题查询条件
if ($title!=""){
$titlesql="select MesID from guestbook where title like '%$title%'";
$title_result=mysql_query($titlesql,$conn);
// 定义一个数组
$titleid=array();
while($titlerow=mysql_fetch_array($title_result)){
array_push($titleid,$titlerow[0]);
}
}
// 如果有内容查询
if ( $content!=""){
$contentsql="select MesID from guestbook where content like '%$content%'";
$content_result=mysql_query($contentsql,$conn);
// 定义一个数组
$contentid=array();
while($contentrow=mysql_fetch_array($content_result)){
array_push($contentid,$contentrow[0]);
}
}
// 定义结果id数组
$resultid=array();
// 如果只有标题查询
if ($title!="" && $content==""){
$resultid=$titleid;
}
// 只有内容查询
elseif ($title=="" && $content!=""){
$resultid=$contentid;
}
// 标题查询和内容查询条件都有
elseif ($title!="" && $content!=""){
// 两者的并集
if ($select=='或'){
$resultid=array_merge($titleid,$contentid);
}
// 两者的交集
elseif ($select=='和'){
$resultid=array_intersect($titleid,$contentid);
}
}
// 确定查询结果个数,如果为0,则显示查询结果为0条
if (empty($resultid)){
echo "<h1></h1>";
echo "<h2 align=center>查询结果为0条!</h2>";
exit();
}
// 排序查询结果
// asort($resultid);
// 去除结果id的冗余
// $resultid=array_unique($resultid);
// 显示查询结果
echo "<h1></h1>";
echo "<h2 align=center>查询结果显示</h2>";
echo "<table border=1 width='80%' align=center>";
echo "<th >标题</th>";
echo "<th >作者</th>";
echo "<th >发贴时间</th>";
for($i=0;$i<count($resultid);$i++){
// 获得该贴的信息
$reply_sql="select * from guestbook where MesID='$resultid[$i]'";
$reply=mysql_query($reply_sql,$conn);
$search_result=mysql_fetch_array($reply);
// 得到留言长度
$len=strlen($search_result[content]);
// 查询显示和浏览显示不一样,如果是查询显示,只是显示该帖子,如果是浏览显示,则所有同主题都显示
echo "<tr><td width='50%'><a href=display.php?mesid=$resultid[$i]?search=1>$search_result[title] ($len 字节)</a></td>";
echo "<td width='15%' align=center>$search_result[username]</td>";
echo "<td width='35%'>$search_result[posttime]</td></tr>";
}
echo "</table>";
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -