使用 URL 参数重定向网页
Redirecting webpage using URL parameters
我正在尝试根据 URL 参数重定向网页。在过去的几天里,我浏览了很多教程和 stackflow 答案,但没有找到解决这个问题的方法。我不是程序员,但学习了我所知道的关于 php 和 html 使用 stackflow.So 编码的一切,谢谢大家。
www.domain.com/women/product?id=08607080
想重定向到
www.domain.com/women/Accessories/product?id=08607080
这是我现在使用的代码,但它指向
www.dmail.com/women
请帮忙
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/womenconfig.inc.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.inc.php';
mysql_connect(HOST, USERNAME, PASSWORD) or die(mysql_error());
mysql_select_db(DB) or die(mysql_error());
$ArtNumber = isset($_GET['id'])?$_GET['id']:Null;
$ArtNumber = isset($_GET['id'])?$_GET['id']:Null;
$query = "(SELECT * FROM " . implode(' WHERE ArtNumber=\'' . $ArtNumber . '\') UNION (SELECT * FROM ', array_keys($shops_arr)) . ' WHERE ArtNumber=\'' . $ArtNumber . '\' ) ';
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result);
$ArtNumber = $row['ArtNumber'] ;
$ProductCategory1 = $row['ProductCategory1'] ;
$ProductCategory2 = $row['ProductCategory2'] ;
$ProductCategory3 = $row['ProductCategory3'] ;
echo "<script>window.location = ''/women/Accessories'.$ProductCategory1.'/product?id=',$ArtNumber,''</script>";
?>
window.location.replace(" ''/women/Accessories'<?php echo "{$ProductCategory1}'/product?id={$ArtNumber}'' "; ?>");
请试试这个。
正如@arkassha 所说,您应该设置正确的 HTTP header(位置:url)或使用网络服务器功能。这是通过位置重定向的示例 header:
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/womenconfig.inc.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.inc.php';
mysql_connect(HOST, USERNAME, PASSWORD) or die(mysql_error());
mysql_select_db(DB) or die(mysql_error());
$ArtNumber = isset($_GET['id'])?$_GET['id']:Null;
$ArtNumber = isset($_GET['id'])?$_GET['id']:Null;
$query = "(SELECT * FROM " . implode(' WHERE ArtNumber=\'' . $ArtNumber . '\') UNION (SELECT * FROM ', array_keys($shops_arr)) . ' WHERE ArtNumber=\'' . $ArtNumber . '\' ) ';
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result);
$ArtNumber = $row['ArtNumber'] ;
$ProductCategory1 = $row['ProductCategory1'] ;
$ProductCategory2 = $row['ProductCategory2'] ;
$ProductCategory3 = $row['ProductCategory3'] ;
header("Location: /women/Accessories/product?id=$ArtNumber");
?>
这里要注意一点,header必须在任何内容之前发送。
对于 apache 的第二个变体,您可以使用重写规则:http://kb.mediatemple.net/questions/85/Using+.htaccess+rewrite+rules#gs
也可以像您提到的那样通过 javascript 重定向,但这不是首选解决方案。
我正在尝试根据 URL 参数重定向网页。在过去的几天里,我浏览了很多教程和 stackflow 答案,但没有找到解决这个问题的方法。我不是程序员,但学习了我所知道的关于 php 和 html 使用 stackflow.So 编码的一切,谢谢大家。
www.domain.com/women/product?id=08607080
想重定向到
www.domain.com/women/Accessories/product?id=08607080
这是我现在使用的代码,但它指向 www.dmail.com/women
请帮忙
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/womenconfig.inc.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.inc.php';
mysql_connect(HOST, USERNAME, PASSWORD) or die(mysql_error());
mysql_select_db(DB) or die(mysql_error());
$ArtNumber = isset($_GET['id'])?$_GET['id']:Null;
$ArtNumber = isset($_GET['id'])?$_GET['id']:Null;
$query = "(SELECT * FROM " . implode(' WHERE ArtNumber=\'' . $ArtNumber . '\') UNION (SELECT * FROM ', array_keys($shops_arr)) . ' WHERE ArtNumber=\'' . $ArtNumber . '\' ) ';
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result);
$ArtNumber = $row['ArtNumber'] ;
$ProductCategory1 = $row['ProductCategory1'] ;
$ProductCategory2 = $row['ProductCategory2'] ;
$ProductCategory3 = $row['ProductCategory3'] ;
echo "<script>window.location = ''/women/Accessories'.$ProductCategory1.'/product?id=',$ArtNumber,''</script>";
?>
window.location.replace(" ''/women/Accessories'<?php echo "{$ProductCategory1}'/product?id={$ArtNumber}'' "; ?>");
请试试这个。
正如@arkassha 所说,您应该设置正确的 HTTP header(位置:url)或使用网络服务器功能。这是通过位置重定向的示例 header:
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/womenconfig.inc.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.inc.php';
mysql_connect(HOST, USERNAME, PASSWORD) or die(mysql_error());
mysql_select_db(DB) or die(mysql_error());
$ArtNumber = isset($_GET['id'])?$_GET['id']:Null;
$ArtNumber = isset($_GET['id'])?$_GET['id']:Null;
$query = "(SELECT * FROM " . implode(' WHERE ArtNumber=\'' . $ArtNumber . '\') UNION (SELECT * FROM ', array_keys($shops_arr)) . ' WHERE ArtNumber=\'' . $ArtNumber . '\' ) ';
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result);
$ArtNumber = $row['ArtNumber'] ;
$ProductCategory1 = $row['ProductCategory1'] ;
$ProductCategory2 = $row['ProductCategory2'] ;
$ProductCategory3 = $row['ProductCategory3'] ;
header("Location: /women/Accessories/product?id=$ArtNumber");
?>
这里要注意一点,header必须在任何内容之前发送。
对于 apache 的第二个变体,您可以使用重写规则:http://kb.mediatemple.net/questions/85/Using+.htaccess+rewrite+rules#gs
也可以像您提到的那样通过 javascript 重定向,但这不是首选解决方案。