重定向基于 URL 参数并且如果 URL 参数在 table 行中可用 - PHP MySQL
Redirect based on URL parameter and if URL parameter is available in table row - PHP MySQL
我有一个 table 其中一个属性是版本。
table 名称是版本。
如果 URL 参数(也称为版本)为 NULL 或不存在,并且版本值不在我的 table.[=16= 中,我想将用户重定向到默认页面]
到目前为止我有这个。没用。
$stonevar = isset($_GET['version']) ? $_GET['version'] : NULL;
if (empty($stonevar)) {
header("Location: index.php?version=default");
}
$id = $_GET['version'];
$result = $db->query("SELECT * FROM `versions` WHERE version='$id'");
while ($row = $result->fetch_assoc()) {
$varex = $row['version'];
}
if ($varex == NULL) {
header("Location: index.php?default");
}
用$result->num_rows
统计结果,看版本是否存在
$stonevar = isset($_GET['version']) ? $_GET['version'] : NULL;
if (empty($stonevar)) {
header("Location: index.php?version=default");
}
$id = $_GET['version'];
$result = $db->query("SELECT * FROM `versions` WHERE version='$id'");
$total_num_rows = $result->num_rows;
if ($total_num_rows>0) {
while ($row = $result->fetch_assoc()) {
$varex = $row['version'];
}
}
else{
header("Location: index.php?default");
}
你必须添加 exit();在 header 函数之后。
试试这样的东西:
<?php
$stonevar = isset($_GET['version']) ? $_GET['version'] : NULL;
if (empty($stonevar)) {
header("Location: index.php?version=default");
exit();
}
$result = $db->query("SELECT * FROM `versions` WHERE version='$stonevar'");
while ($row = $result->fetch_assoc()) {
header("Location: index.php?".$row['version']);
exit();
/*
* or something you want to do if version exist
*/
}
header("Location: index.php?default");
exit();
?>
我有一个 table 其中一个属性是版本。
table 名称是版本。
如果 URL 参数(也称为版本)为 NULL 或不存在,并且版本值不在我的 table.[=16= 中,我想将用户重定向到默认页面]
到目前为止我有这个。没用。
$stonevar = isset($_GET['version']) ? $_GET['version'] : NULL;
if (empty($stonevar)) {
header("Location: index.php?version=default");
}
$id = $_GET['version'];
$result = $db->query("SELECT * FROM `versions` WHERE version='$id'");
while ($row = $result->fetch_assoc()) {
$varex = $row['version'];
}
if ($varex == NULL) {
header("Location: index.php?default");
}
用$result->num_rows
统计结果,看版本是否存在
$stonevar = isset($_GET['version']) ? $_GET['version'] : NULL;
if (empty($stonevar)) {
header("Location: index.php?version=default");
}
$id = $_GET['version'];
$result = $db->query("SELECT * FROM `versions` WHERE version='$id'");
$total_num_rows = $result->num_rows;
if ($total_num_rows>0) {
while ($row = $result->fetch_assoc()) {
$varex = $row['version'];
}
}
else{
header("Location: index.php?default");
}
你必须添加 exit();在 header 函数之后。
试试这样的东西:
<?php
$stonevar = isset($_GET['version']) ? $_GET['version'] : NULL;
if (empty($stonevar)) {
header("Location: index.php?version=default");
exit();
}
$result = $db->query("SELECT * FROM `versions` WHERE version='$stonevar'");
while ($row = $result->fetch_assoc()) {
header("Location: index.php?".$row['version']);
exit();
/*
* or something you want to do if version exist
*/
}
header("Location: index.php?default");
exit();
?>