php - 使用 URL 参数重定向网页

标签 php mysql redirect url-parameters

我正在尝试根据 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/

相关文章:

php - 计算给定日期之间的价格

php - 黑客可以对网站执行什么操作以及如何保护我的网站免受这些攻击?

php - CodeIgniter - Group by with order by 不按预期工作

java - 来自 jsp :include being ignored? 的 response.sendRedirect()

php - 如何在子域重定向后禁用与 htaccess 的直接链接?

php session 变量未更新

php - 在表中插入一行并增加后面的自动增量值

php - SQL 查询 SET 和 Update 但不是从 PHP 调用

mysql - SELECT @xi :=@xi+1 AS xc? 是什么意思

javascript - 链接不会重定向到 Jquery 选项卡