Господа оптимизаторы! Подскажите как быть?

CjEcho

Новичок
Проблема возникает в обработчике. В случае, если в конце кода, после внесения данных в базу и установки cookies для перехода используется следующий код:

PHP:
header("Location: http://".$server."/index.php"); 
exit;
Если же в коде написать:
PHP:
echo "<a href='$server'/index.php'>Ваш голос учтен!</a>"
то всё происходит нормально. НО - хотелось бы, чтобы работало без появления сообщения "Ваш голос учтен!".

-~{}~ 21.05.09 09:32:

Обработчик вызывается так (из index.php):

<FORM action='opros_logic.php' method='post'>"
 

Фанат

oncle terrible
Команда форума
попробуй разобраться, просматривая заголовки HTTP обмена.
если не получится - нарисуй тестовую форму, без записи в бд, без кучи вопросов.
просто 1 субмит, один редирект, один вывод результатов. не больше 10 строк на все.
и проверь снова. если эффект сохранится, то давай код сюда.
 

CjEcho

Новичок
Сделал тестовую форму с кодом:

<index.php>
PHP:
<?php
if (isset($_COOKIE['test'])):
	echo $_COOKIE['test'];
else:
	echo "	<FORM action='submit.php' method='post'>
			<INPUT type='text' name='var' size='8' maxlength='8'>
			<INPUT title='Push me...' type='submit'>
			</FORM>";
endif;
?>
<submit.php>
PHP:
<?php
$server="hostname.ru";

if ($_SERVER['REQUEST_METHOD']=="POST"):
	setcookie('test',$_POST['var'],time()+12);
endif;

header("Location: http://".$server."/_tested/index.php"); 
exit;
?>
Всё работает четко и ровно во всех браузерах. Видимо проблема в условных выражениях, т.к. там у меня по другому:

<index.php>
PHP:
if (isset($_COOKIE['cookies_question']) AND ($_COOKIE['cookies_question']==$quest_id)):
	//ВЫВОД РЕЗУЛЬТАТОВ ОПРОСА
	.........
else:
	//ВЫВОД ФОРМЫ ОПРОСА
	echo "<FORM action='opros_logic.php' method='post'>";
	.........
endif;
<opros_logic.php>
PHP:
if (($_SERVER['REQUEST_METHOD']=="POST") AND ($_COOKIE['cookies_question']<>$quest_id)):
	setcookie('cookies_question',$quest_id,time()+12);
endif;

header("Location: http://".$server."/index.php"); 
exit;
Как смотреть заголовки HTTP обмена?
 

WayBe

Новичок
может $server всё-таки не определён (или утерян)?
И ещё: ты ведь на одну и ту-же страницу всегда возвращаешься?
если нет, может-быть хттп_реферер поможет?
 

CjEcho

Новичок
$server не утерян 100%... где то читал что-то но не помню, что-то с созданием куки связано.

-~{}~ 21.05.09 15:22:
ты ведь на одну и ту-же страницу всегда возвращаешься?
Возвращаюсь на index.php
 

Фанат

oncle terrible
Команда форума
куки здесь не при чем. ты ведь в тестовом создаешь куку.

дело скорее всего в логике. выводи отладочную информацию - что делает сейчас скрипт
и сравнивай с тем, что должен делать

как заголовки смотреть, написано по той самой ссылке. я думал, ты давно прочел
 
Сверху