Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Web > HTML и CSS
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 17.10.2019, 17:48   #1
volni
Форумчанин
 
Регистрация: 16.03.2019
Сообщений: 133
По умолчанию Пересылка на другую страницу ( header )

Здравствуйте, такая проблема, сделал промежуточный php файл, чтобы ловил данные и записывал их в сессию,а затем переходил на другую страницу.
Код:
<?php 
session_start();	
	$_SESSION['SelectionDescription'] = $_POST['SelectionDescription'];
	header('Location:table.php');
	exit();
?>
Но проблема в том, что данные до другой страницы не доходят, выводил значения $_POST['SelectionDescription'] и $_SESSION['SelectionDescription'] все выводило верно, но после выполнения header('Location:table.php'), они куда-то деваются и не доходят дальше, что делать?
volni вне форума   Ответить с цитированием
Старый 17.10.2019, 18:52   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,263
По умолчанию

в table.php не забываете делать
Код:
session_start();
?
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 18.10.2019, 12:11   #3
volni
Форумчанин
 
Регистрация: 16.03.2019
Сообщений: 133
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
в table.php не забываете делать
Код:
session_start();
?
нет, вот как выглядит table.php
Код:
<?php 
session_start();
$_SESSION['SelectionDescription'] = $_POST['SelectionDescription'];
	
?>
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <meta http-equiv="Content-Language" content="ru">
  <title></title>
  <style>
   .button1 { 	width:100%;
				height:40px; 
   }
  </style> 
 </head> 

<frameset cols="29%,*">
	<frameset frameborder ="0" rows="20%,80%">
		<frame border = "0" src="left/search.php">
		<frame border = "0" src="left/tree.php">
	</frameset>
	<frame name ="TABLE" src="right/clean.php">
	<noframes>Ваш браузер не отображает фреймы</noframes>
</frameset>
</html>
В самих фреймах тоже сессии использую

А все, разобрался, убрал из table.php
Код:
<?php 
session_start();
$_SESSION['SelectionDescription'] = $_POST['SelectionDescription'];
	
?>
И все заработало, только не понял почему=)

Последний раз редактировалось volni; 18.10.2019 в 12:21.
volni вне форума   Ответить с цитированием
Старый 18.10.2019, 12:41   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,263
По умолчанию

Цитата:
Сообщение от volni Посмотреть сообщение
$_SESSION['SelectionDescription'] = $_POST['SelectionDescription'];
потому что, как только вы передали управление на table.php никакого $_POST там нет и быть не может (не, может быть, если Вы вызовете table.php через метод POST, но простая переадресация ничего про POST не знает).
но Вы же уже сохранили перед переадресацией нужное значение $_POST в сессии.
Вот оттуда (из сессии) его и можно брать. $_POST нельзя использовать.
Serge_Bliznykov вне форума   Ответить с цитированием
Ответ
Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
переадресация на другую страницу Fryg PHP 8 29.12.2011 11:03
перенаправление на другую страницу в ссылке Тутонхамон HTML и CSS 0 24.11.2011 21:15
Переход на другую страницу в PHP МастерГуру HTML и CSS 5 24.10.2011 13:00
Как добавить одну страницу в другую Nitr JavaScript, Ajax 1 13.03.2011 01:26
пересылка данных из одной сети в другую AIst Работа с сетью в Delphi 5 08.07.2008 23:50