Вопрос
Объясните начинающему, откуда в нижеследующем коде лезут ошибки типа:
Notice: Undefined index: 'location' in E:\HTTP\Apache2\htdocs\my\redirect.php on line 2
Warning: Cannot modify header information — headers already sent in E:\HTTP\Apache2\htdocs\my\redirect.php on line 2
redirect.html
<html><head><title>Перенаправление</title></head><body>
<form action="redirect.php" method="POST">
Перенаправить меня к:
<select name="location">
<option value="http://www.prima-tech.com/">Prima-Tech</option>
<option value="http://www.thickbook.com/">thickbook.com</option>
<option value="http://www.php.net/">PHP.net</option>
<option value="http://www.zend.com/">Zend Technologies</option>
</select><input name="submit" type="Submit" value="Перейти">
</form></body></html>
redirect.php
<?php if ($_POST['location']==""){header ("Location: redirect.html");exit;}
else {header ("Location: $_POST['location']");exit;} ?>
Ответ
Зачем было привлекать $_POST?
Нужное тебе значение доступно как $location, будь проще.
К тому же перенаправление твое просто не работает. Обычно это делается на уровне хидера _страницы_ хтмл, а не заголовка HTTP-ответа.
Из конференции Expert_FAQ
Copyright 2000-2004 Сообщество Чайников
Контактная информация