1.给多条件查询,添加条件
<h1>新闻信息查看</h1>
<?php
$tiaojian1=" 1=1";
$tiaojian2=" 1=1";
$title=""; //为了下面foreach中能够取到这个变量,所以在外边定义一下。
$author="";
if(!empty($_POST['title']))
{
$title=$_POST['title'];
$tiaojian1=" title like '%{$title}%'";
}
/*else
{
echo "<script> alert('请输入');</script>"; //如果输入的是空,可以做一个弹窗进行提示
}*/ if(!empty($_POST['author']))
{
$author=$_POST['author'];
$tiaojian2=" author like '%{$author}%'";
} ?>
2.创建表单
<div><form action="" method="post">标题:<input type="text" name="title" value="<?php echo $title; ?>">
作者:<input type="text" name="author" value="<?php echo $author; ?>"> <!--输入关键字后文本框中,需要给文本框添加一个value值,value="<?php echo $title; ?>"-->
<input type="submit" value="查询"></form><form action="fabu.php">
<input type="submit" value="添加新闻">
</form>
</div>
3.创建显示区域
<form action="piliangshanchu.php" method="post">
<table width="95%" border="1" cellpadding="0" cellspacing="0" align="center">
<tr>
<td><input type="checkbox" onclick="quanxuan(this)">标题</td> <!--在标题栏添加一个复选框-->
<td>作者</td>
<td>来源</td>
<td>内容</td>
<td>发布时间</td>
<td>删除</td>
<td>修改</td>
</tr>
<?php $db=new MySQLi("localhost","root","123","test1");
mysqli_connect_error()?"连接失败":"";
$sql="select * from news where {$tiaojian1} and {$tiaojian2}";
echo $sql; //输出语句看看结果
$result=$db->query($sql);
$attr=$result->fetch_all();
foreach($attr as $v)
{
/*$str=str_replace($title,"<mark>{$title}</mark>",$v[1]); //str_replace进行替换,添加mark标签,对关键字进行特殊显示*/
$str=str_replace($title,"<span style='color:red;'>{$title}</span>",$v[1]); //还可以通过添加<span>标签,改span的color
echo "<tr><td><input type='checkbox' value='{$v[0]}' name='sc[]' class='xuanzhong'/>{$str}</td><td>{$v[2]}</td><td>{$v[3]}</td><td>{$v[4]}</td><td>{$v[5]}</td><td><a href='shanchu.php?ids={$v[0]}' onclick=\"return confirm('确认删除嘛')\">删除</a></td><td><a href='xiugai.php?ids={$v[0]}'>修改</a></td></tr>"; //重点:进行复选框多选时候,name的值要用sc[]数组接收
} ?>
</table>
<div><input type="submit" value="批量删除"></div>
</form>
4.通过标题栏的复选框状态,对下面的复选框进行多选,用js
<script type="text/javascript">
function quanxuan(a)
{
var ck=document.getElementsByClassName("xuanzhong");
for(var i=0;i<ck.length;i++)
{
if(a.checked) //判断a的选中状态
{
ck[i].setAttribute("checked","checked");//设置添加属性
}
else
{
ck[i].removeAttribute("checked");//移除属性
}
} } </script>
5.批量删除的处理界面
<?php
if(!empty($_POST['sc'])) //通过上面复选框的选中值,进行提取,提取出来是数组的形式
{
$attr=$_POST['sc']; //放到一个数组中
$db=new MySQLi("localhost","root","123","test1");
mysqli_connect_error()?"连接失败":"";
/*foreach($attr as $v)
{
$sql="delete from news where ids='{$v}'";
if($result=$db->query($sql))
{
header("location:main.php");
}
else
{
echo "删除失败";
}
}*/
$atr=implode("','",$attr); //通过implode函数,把数组合并成一个字符串,为下面的sql语句形成条件语句 条件语句in('','','','')这样的形式
$sql="delete from news where ids in('{$atr}')";
if($result=$db->query($sql))
{
header("location:main.php");
}
else
{
echo "删除失败";
} }