通过php,你最多能实现/sort.php/1_1这种形式,如果要实现/sort_1_1,你需要使用apache的mod_rewrite来搞定,换言之,如果你不能或没有权限修改服务器apache设置,是无法实现你的目标的

解决方案 »

  1.   

    看来我很幸运,一下子就碰上高手了,
    一语中的!我就是使用apache的mod_rewrite,
    我可以使用mod_rewrite!
    /sort.php?sortid=1这些都改成sort_1.html
     可是第二页以上是/sort.php?sortid=1&pagenum=2这样的,我不会改!
    请帮帮我!
    无限感激!
      

  2.   

    就是啊
    mod_rewrite规则我已经写好了
    通过/sort_1_1.html已经可以正常访问
    问题是:网页上显示的还是/sort.php?sortid=1&pagenum=1
    我想让他显示为/sort_1_1.html
    看了一下,好像要修改makepagelink2函数和$pagelinks变量
    我对php不熟,请大侠指教。感激!
      

  3.   

    RewriteRule /sort.php?sortid=([0-9]+)&pagenum=([0-9]+) /sort_$1_$2
      

  4.   

    Mark
    原来rewriteRule支持正则阿。
      

  5.   

    谢谢Meteorlet(www.dictworld.com)
    但我需要的不是rewriteRule正则,这个我已经写好了
    通过/sort_1_1.html已经可以正常访问
    问题是:网页上显示的还是/sort.php?sortid=1&pagenum=1
    我想让他显示为/sort_1_1.html我想修改的是网页的链接!
    这需要修改一个函数
      

  6.   

    在你的函数中没有看到形如"sortid=1"的字样,想必是包含在$link里的
    $link = '/sort.php?sortid=1';你需要把$link调整为'/sort_1'
    然后把形如
     " <a href=\"$link&pagenum=".($page-5)."\">...</a>"
    的改成
     " <a href=\"{$link}_".($page-5).".html\">...</a>"实际上sortid也应该是传入的
    function makepagelink2($url, $sortid, $page, $pages)
     " <a href=\"{$url}_{$sortid}_".($page-5).".html\">...</a>"
      

  7.   

    不可思议!我居然成功了!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!感谢xuzuning(唠叨)老大!