请看下,我有两个页面index.php和detail.php,都有一个相同的功能,请看index.php是所有的数据库中的文章列表,是循环显示库中所有文章内容,在每个文章前面有一个功能就是
<?php
echo "$rs->tup"; //这里是读出已经存在的dig数目
echo "<a href='dig.php?serial=$rs->tserial'>dig it</a>";//dig it
?>
这里的dig.php页面代码是require_once("conn.php");
if ($_GET){
$exec="update thread set tup=tup+1 WHERE tserial={$_GET['serial']}"; 
$result=mysql_query($exec);
echo "<Script> window.alert( '感谢你的DIG! ');javascript:history.back(1); </Script>";
}我遇到的问题是当我点击了DIG IT后,跳出对话框,提示成功,然后确定后,却页面跳转到先前没有DIG的状态,必须要刷新下页面,才看以看到新的dig数目,我想应该是javascript:history.back(1); 这句话的问题,请问这话该怎么换呢?谢谢

解决方案 »

  1.   

    没太看懂你的意思
    即使javascript:history.back(1);成功,你也只看到原先的(历史记录,缓存的),不会刷新!
    你想实现的功能可用别一个来实现
    header(location:index.php),则意味重新请求index.phpheader(location:index.php)写在dig.php里的最后面,如果数据操作成功后直接跳转
    你查一下header函数用法
      

  2.   

    你的想法我使用过...
    但是这个不是我需要的,用你的方式,会有比较明显的问题是
    当你点dig的页面正好是index.php的时候,还好
    但是如果是index.php?page=2
    就是如果是列表第二页的时候,你调到的是index.php,读者还要自己再去找刚才那页index.php?page=2,同样的,我点开一个文章,如地址是detail.php?id=100,当我dig后,如按你的,跳到index.php,那样,读者再找这个页面,是不是太辛苦了点?
    还有其他办法吗?
      

  3.   

    1、<a   href='dig.php?serial=$rs-> tserial' > 
    这里面加一个用新窗口打开就行,不影响你原来的页面,怎么写我记不清了2、如果你想回到原来的index.php?page=2 ,你可给个变量参数page=2 3、如果你是动态更新数据库,你的页码及页数也会变的,这时最好的办法你分页时得记住ID号4、还有一种办法就是一次将所有数据取出来,再分页,
      

  4.   

    ...
    我想请问下PHP中是怎么获取前页的?
    我知道在ASP可以通过记录前页,然后直接跳到那个页就行了
    请问PHP中如何实现?
      

  5.   

    试试
    header("Location:".$_SERVER["HTTP_REFERER"]);
      

  6.   


    或者就是点确定后,刷新当前页
    ————————————————————————直接在一个页里写数据库操作,用表单提交给本页,不用表单仍得用header而你要分页的话仍要给分页参数所以,分页程序仍是关键俺 想不到其他好办法了,等高手吧
      

  7.   

    把当前页码和一些参数用GET方式传过去不就可以了.