大家看看我这段代码要添加什么才能在点击下一页的时候把表单中的值传上去。先谢谢大家了。
<form action="sousuo.php" method="POST">
<input type="hidden" name="tag" value="1">
<input name="sousuo" type="text" value="<? echo $_POST['sousuo'] ?>"/>
<input name="tijiao" type="submit" value="搜索" />
</form>
<?
require_once('conn.php');
/*if($_POST['tag']==1)
{*/
$sqlc="select count(*) from message where user like '%$_POST[sousuo]%' or sex like '%$_POST[sousuo]%' or title like '%$_POST[sousuo]%' or content like '%$_POST[sousuo]%'";
echo $sqlc;
 $resultc=mysql_query($sqlc);
 $rsc=mysql_fetch_array($resultc);
 $num=$rsc[0];//记录总数
 $pagenum=ceil($num/3);//总的页数
if(empty($_GET['page']))
  $page=1;
else
{
  $page=$_GET['page'];
  if($page<0) $page=1;
  if($page>=$pagenum) $page=$pagenum;
 }
$sql="select * from message where user like '%$_POST[sousuo]%' or sex like '%$_POST[sousuo]%' or title like '%$_POST[sousuo]%' or content like '%$_POST[sousuo]%' limit ".(($page-1)*3).",3";
echo $sql;
$result=mysql_query($sql);//查询符合条件的语句
while($rs=mysql_fetch_object($result))
{
 ?>
 <table width="400" border="1">
    <tr>
      <td>用户名:&nbsp;<? echo $rs->user; ?></td>
      <td>性别:&nbsp;<? echo $rs->sex; ?></td>
      <td>标题:&nbsp;<? echo $rs->title; ?></td>
    </tr>    <tr>
      <td colspan="3">内容:&nbsp;<? echo $rs->content; ?></td>
    </tr>
<tr>
<td  align="center"><a href="del.php?id=<?php echo $rs->id; ?>">删除</a></td>
<td  align="center"><a href="update.php?id=<?php echo $rs->id; ?>">编辑</a></td>
<td  align="center"><a href="chakan.php?id=<?php echo $rs->id; ?>">查看</a></td>
    </tr>
</table>
<br />
<?
}
$first=1;
$prev=$page-1;
$next=$page+1;
$last=$pagenum;
if($page==1&&$pagenum>1)
{    
    echo "首页&nbsp;|&nbsp;";
    echo "上一页&nbsp;|&nbsp;";
    echo "<a href=\"sousuo.php?page=".$next."\">下一页</a>&nbsp;|&nbsp;";
    echo "<a href=\"sousuo.php?page=".$last."\">尾页</a>&nbsp;|&nbsp;";
}
elseif($page>=1&&$page!=$pagenum&&$num>0)
{
    echo "<a href=\"sousuo.php?page=".$first."\">首页</a>&nbsp;|&nbsp;";
    echo "<a href=\"sousuo.php?page=".$prev."\">上一页</a>&nbsp;|&nbsp;";
    echo "<a href=\"sousuo.php?page=".$next."\">下一页</a>&nbsp;|&nbsp;";
    echo "<a href=\"sousuo.php?page=".$last."\">尾页</a>&nbsp;|&nbsp;";
}
elseif($page==$pagenum&&$page!=1)
{
    echo "<a href=\"sousuo.php?page=".$first."\">首页</a>&nbsp;|&nbsp;";
    echo "<a href=\"sousuo.php?page=".$prev."\">上一页</a>&nbsp;|&nbsp;";
    echo "下一页&nbsp;|&nbsp;";
    echo "尾页&nbsp;|&nbsp;";
}
elseif($page==$pagenum)
{
    echo "首页&nbsp;|&nbsp;";
    echo "上一页&nbsp;|&nbsp;";
    echo "下一页&nbsp;|&nbsp;";
    echo "尾页&nbsp;|&nbsp;";    
}
else
{
    echo "首页&nbsp;|&nbsp;";
    echo "上一页&nbsp;|&nbsp;";
    echo "下一页&nbsp;|&nbsp;";
    echo "尾页&nbsp;|&nbsp;";
}
 echo "<br>";
 echo "<br>";
 echo '<input name="return" type="button" onClick="window.location.href(&quot;page.php&quot;)" value="返回" />';
  
?>

解决方案 »

  1.   

    ...........
      if($page>=$pagenum) $page=$pagenum;
     }if(isset($_POST['tag'])){
    $url += 'tag=' . $_POST['tag'];
    }
    if(isset($_POST['sousuo'])){
    $url += '&sousuo=' . $_POST['sousuo'];
    }$sql="select * from message where user lik......//将$url连接到上一页下一页那些地方
      

  2.   

    if($page>=$pagenum) $page=$pagenum;
     }if(isset($_POST['tag'])){
    $url += 'tag=' . $_POST['tag'];
    }
    if(isset($_POST['sousuo'])){
    $url += '&sousuo=' . $_POST['sousuo'];
    }$sql="select * from message where user lik......
      

  3.   

    查询的关键字在分页的时候没有跟过去?把$_POST 改成 $_REQUEST[] 或你的表单表成get提交 $_POST 改成 $_GET
      

  4.   

    你在点击下一页的时候刷新页面了。那些关键字都为空了。多加一步试试。
    $sousuo=$_POST[sousuo];
    然后把两个sql指定改为:
    $sqlc="select count(*) from message where user like '%$sousuo%' or sex like '%$sousuo%' or title like '%$sousuo%' or content like '%$sousuo%'";
    下面那个也是如此。试试看。
      

  5.   

    我都试了一遍还是不行,当点击第二页的时候sql语句的输出结果是
    select count(*) from message where user like '%%' or sex like '%%' or title like '%%' or content like '%%'select * from message where user like '%%' or sex like '%%' or title like '%%' or content like '%%' limit 3,3 
    值没有传上去,我想在下一页那个链接中再传一次$_POST[sousuo],但传不上去,该怎样解决,请高手指点
      

  6.   

    echo $_POST['sousuo'];看能接收到吗
      

  7.   

    那你把他传过去不就行了。你或者用session传递吧。
    session_start();//放在开头
    $_SESSION['sousuo']=$_POST['sousuo'];
    $sqlc="select count(*) from message where user like '%{$_SESSION['sousuo']}%' or sex like '%{$_SESSION['sousuo']}%' or title like '%{$_SESSION['sousuo']}%' or content like '%{$_SESSION['sousuo']}%'";
      

  8.   

    运行时,session_start();总是出现两个错误:
    1、Cannot send session cookie - headers already sent by (output started at D:\APMserv\APMServ5.2.6\www\htdocs\sousuo.php:3) in D:\APMserv\APMServ5.2.6\www\htdocs\sousuo.php on line 7
    2、Cannot send session cache limiter - headers already sent (output started at D:\APMserv\APMServ5.2.6\www\htdocs\sousuo.php:3) in D:\APMserv\APMServ5.2.6\www\htdocs\sousuo.php on line 7
      

  9.   

    我试过了,怎么样都不行,就算session_start()没错误了,程序还是运行的像以前一样,该怎么办
      

  10.   

    点击下一页的时候输出一下session的值。echo $_SESSION['sousuo'];看有不有值。
      

  11.   

    结果运行正确了,我没用session,直接把值又在链接中传了一下,并且把POST改为了REQUEST,谢谢各位了