Перенаправление веб-страницы с использованием параметров URL

Я пытаюсь перенаправить веб-страницу в зависимости от параметров URL. За последние пару дней я прошел через очень много обучающих программ и ответов на стек, не находя выхода из этого. Я не программист, но узнал все, что знаю о php и html-кодировании, используя stackflow. Так что спасибо всем.

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>";

?>

0

Решение

Как сказал @arkassha, вы должны установить правильный HTTP-заголовок (Location: url) или использовать возможности веб-сервера. Вот пример перенаправления через заголовок местоположения:

<?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");
?>

Здесь следует отметить, что заголовки должны отправляться перед любым содержимым.

Что касается второго варианта в случае apache, вы можете использовать правила переписывания: http://kb.mediatemple.net/questions/85/Using+.htaccess+rewrite+rules#gs

Вы также можете перенаправить через javascript, как вы упомянули, но это не является предпочтительным решением.

1

Другие решения

 window.location.replace(" ''/women/Accessories'<?php echo "{$ProductCategory1}'/product?id={$ArtNumber}'' "; ?>");

пожалуйста, попробуйте это.

1

По вопросам рекламы [email protected]