【发布时间】:2012-04-17 20:54:13
【问题描述】:
数据库行 ID 与 URL 相关联,如下所示:
第 2 行 的页面变为 site.com/index.php?id=2
如果我手动刷新index.php会显示一条随机记录,但地址栏自然不会显示记录ID。
有没有办法让链接在地址栏显示id变化的同时显示随机记录?
感谢您的帮助!
【问题讨论】:
数据库行 ID 与 URL 相关联,如下所示:
第 2 行 的页面变为 site.com/index.php?id=2
如果我手动刷新index.php会显示一条随机记录,但地址栏自然不会显示记录ID。
有没有办法让链接在地址栏显示id变化的同时显示随机记录?
感谢您的帮助!
【问题讨论】:
不只是显示随机记录,而是选择记录的 id 并重定向到显示 id 的版本。
$randomId = // whatever method you use to choose it
header( "Location: http://site.com/index.php?id=$randomId" );
【讨论】:
!isset( $_GET[ 'id' ] )) 时进行重定向。
有多种方法可以做到这一点。
您可以像 Juhana 所说的那样使用 the header function。这将通过 pagereloading 将您重定向到另一个页面。
您可以使用 HTML5 更改地址栏,而无需使用 window.history 和 jQuery for AJAX 重新加载页面。
最安全的选择是 PHP 标头函数。请记住,在标题之前不要打印/回显任何内容。如果您仍然收到“标头已发送”,请使用 ob_clean()
【讨论】:
试试这个:
$randomId = rand(0,100); // if let's say your post IDs go from 0 to 100
header( "Location: http://www.yourdomain.com/post.php?id=$randomId" );
【讨论】: