检查是否存在查询字符串,如果没有则创建一个 - PHP

use*_*392 8 php url pageload query-string

我有几个页面使用查询字符串突出显示菜单中的选项,页面上的所有网址都有currant查询字符串,因此如果用户点击链接,相同的菜单选项将在下一页突出显示.

但是,当有人在没有包含在URL中的查询字符串的情况下访问页面时,问题就会出现,菜单选项不会突出显示.

我想要做的是检查URL以查看是否存在查询字符串,如果不存在,则创建一个.

网址是这样的 www.mysite.co.uk/Folder1/Folder2/Page.php?id=3

?id=1如果url中还没有一个查询字符串,我希望默认的查询字符串.

关于你如何做到这一点的任何想法?

如果用户使用URL访问会发生什么 www.mysite.co.uk/Folder1/Folder2/Page.php?

URL会以最终结尾 www.mysite.co.uk/Folder1/Folder2/Page.php??id=1

还是会的? www.mysite.co.uk/Folder1/Folder2/Page.php?id=1

谢谢,

Roy*_* Bg 11

也许有很多方法.如果不存在,您可以为$ _GET键分配值.或者,如果您确实需要查询字符串,则可以使用当前查询字符串将用户重新导航到同一页面.

if (!isset($_GET['id'])) {
    header("Location: Page.php?id=1");
    exit;
}
Run Code Online (Sandbox Code Playgroud)

它应该在页面中的任何输出之前.因此,如果用户访问Page.phpPage.php?Page.php?someDifferentParamThanId=10将返回虚假isset($_GET['id'])因此会重定向到Page.php?id=1