⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 search.php

📁 php开发实例完全剖析
💻 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 + -