Php If语句:如何提取第二个GET变量
我如何得到这个来提取我的第二个变量?我已经有了一个开关设置 我刚刚在交换机中添加了这一部分: 现在,如果我在page=photos上,我的代码是:Php If语句:如何提取第二个GET变量,php,variables,get,Php,Variables,Get,我如何得到这个来提取我的第二个变量?我已经有了一个开关设置 我刚刚在交换机中添加了这一部分: 现在,如果我在page=photos上,我的代码是: <body id="photos"> 我需要这样做,如果任何链接上有sections变量,如page=photos§ion=cars,那么它使用相同的ID: <body id="photos"> 首先,HTML元素只能有一个id。因此,如果您想创建一个混合元素,例如页面部分,您可以执行以下操作: <body
<body id="photos">
我需要这样做,如果任何链接上有sections变量,如page=photos§ion=cars,那么它使用相同的ID:
<body id="photos">
首先,HTML元素只能有一个id。因此,如果您想创建一个混合元素,例如页面部分,您可以执行以下操作:
<body id="<?php echo isset($_GET['page']) ? $_GET['page'] : "home"; echo isset($_GET['section']) ? ("-".$_GET['section']) : ''; ?>">
有关PHP中三元运算符的更多信息,请参阅?并且:我在echo语句see中将PHP代码移到body的id属性之外以提高可读性,如果需要,请使用else。通过清理或验证来自$\u GET的输入,确保您的代码不易被注入。例如:
<?php
function isValidID($x) {
return preg_match('/^[A-Z][-_.A-Za-z0-9]$/i', $x);
}
if (isset($_GET['section']) && isValidID($_GET['section'])) {
$bodyID = $_GET['section'];
} else if (isset($_GET['page']) && isValidID($_GET['page'])) {
$bodyID = $_GET['page'];
} else {
$bodyID = 'home';
}
?>
...
<body id="<?php echo $bodyID; ?>">
或者
<?php
function isValidID($x) {
return preg_match('/^[A-Z][-_.A-Za-z0-9]$/i', $x);
}
$bodyID='home';
foreach (array('section', 'home') as $key) {
if (isset($_GET[$key]) && isValidID($_GET[$key])) {
$bodyID = $_GET[$key];
break;
}
}
?>
...
<body id="<?php echo $bodyID; ?>">
在本例中,我将使用第一个展开的版本。如果必须检查更多输入键,请使用基于循环的方法
如果您决定在ID中同时使用page和section,可以尝试以下操作:
<?php
function isValidID($x) {
return preg_match('/^[A-Z][-_.A-Za-z0-9]$/i', $x);
}
if (isset($_GET['page']) && isValidID($_GET['page'])) {
$bodyID = $_GET['page'];
} else {
$bodyID = 'home';
}
if (isset($_GET['section']) && isValidID($_GET['section'])) {
$bodyID .= '_' . $_GET['section'];
}
?>
...
<body id="<?php echo $bodyID; ?>">
我不完全确定我是否理解你的问题,但你在做什么:
$_GET['page']; echo $page;
你认为发生了什么事?您正在回显一个没有定义的变量。如果要回显url中传递的值,只需执行以下操作:
echo $_GET['page'];
GET并不意味着获取变量,而是将变量传递到页面的方法。可能的方法是在url中获取或不发布。如果该节已定义,那么这不是一个if来查找它吗?i、 e
if(isset($_GET['section'])){
//create div
} elseif(isset($_GET['page']){
//create fallback div
}
您缺少的代码最终是什么…您确定不希望正文ID中同时包含页面和节吗?例如
$_GET['page']; echo $page;
echo $_GET['page'];
if(isset($_GET['section'])){
//create div
} elseif(isset($_GET['page']){
//create fallback div
}