我正在尝试根据 URL 参数重定向网页。在过去的几天里,我已经浏览了很多教程和 stackflow 答案,但没有找到解决办法。我不是程序员,但使用 stackflow 学习了有关 php 和 html 编码的所有知识。所以谢谢大家。
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>";
?>
最佳答案
正如 @arkassha 所说,您应该设置正确的 HTTP header (位置:url)或使用 Web 服务器功能。以下是通过位置 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 进行重定向,但这不是首选解决方案。
关于php - 使用 URL 参数重定向网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28136356/