Проблемы с сессиями после require

  • Автор темы бочератор
  • Дата начала

бочератор

Guest
Проблемы с сессиями после require

Использую php4. Существует 3 файла: index.php, 1.php, 2.php.
index.php
<?
session_name("NEW"); session_start(); ...
require "http://localhost/1.php"; ... ?>
1.php
<? function fun1()
{ global $ses_array1;?>
<form action="http://localhost/2.php" method="POST">
fam: <input type=text name="user_fam" value="<?echo $ses_array1[6];?>"><br> ... <input type=submit name="Ok" value="OK"> </form> }
<? fun1();?>
2.php
<?
session_name("NEW"); session_start();
$ses_array1[6]=$_POST["user_fam"];
session_register("ses_array1");
header("Location: http://localhost");
exit();
?>
Все передается и читается в index.php, но в 1.php данные не выводятся. Возможно проблема связана с require. Пробовал session_start() в 1.php - не помогло.
Вообще задача стоит во включении в index.php (общий дизайн) формы запоминающей введенные данные на случай ошибок и т.д.
P.S. В мануале ответа на подобную проблему не нашел.
 

Andreika

"PHP for nubies" reader
require "http://localhost/1.php"
эт че за фикня? причем там http://localhost/ ?
 

Andreika

"PHP for nubies" reader
Nimous
будь проще, напиши что тебе не нравицца.. то, что в require можно передать url я знаю, но то, что при этом в 1.php запустицца сессия или инициализиурется массив $ses_array1 от тебя слышу первый раз
 

Nimous

Guest
Andreika
require "http://localhost/1.php"
эт че за фикня? причем там http://localhost/
Как ты написал, так я и понял.
А сессия у него вообще никогда не запустится, потому что он её не запускает.
 

Dreammaker

***=Ф=***
Автор оригинала: Nimous
Andreika

Как ты написал, так я и понял.
А сессия у него вообще никогда не запустится, потому что он её не запускает.
И из чего вывод, что сессия не запускается?
Вопрос в том, что всё остальное делается черезчур оригинально, но повторюсь откуда вывод, что сессию он не запускает?
 

Andreika

"PHP for nubies" reader
Dreammaker
оттуда, что в 1.php нет ни одной функции про сессии
 

Dreammaker

***=Ф=***
а что такое 1.php в данном контексте? Это случайно не часть index.php, в котором сессия запускается?
 

Andreika

"PHP for nubies" reader
Dreammaker
во! и тот с приклееными усами тоже думал, что там бриллианты ) а они давно уже в милиции, шеф )
 

Dreammaker

***=Ф=***
Таким образом, определили, что проблема в http:// с этим чудом сессия теряется :)
Но вопрос опять же не в этом, а если быть точнее, то в том, что при хидер - локейшн идентификатор сессии, обычно уходит на деревню дедушке... И его нужно исскуственно прилепить, иначе опять будет потеря сессии.. И exit(), не всегда помогает..
 

бочератор

Guest
Спасибо, сессия действительно теряется из-за http://, но правда с header("Location:.. пока все работает.
 

Dreammaker

***=Ф=***
бочератор,
отключи куки в броузере и попробуй в этих случаях возможна потеря сессии. не всегда, но бывает...
 

Фанат

oncle terrible
Команда форума
бочератор
а если бы сессия не терялась, то ты бы и дальше так писал - require "http...?
 

sylord

Новичок
бочератор

index.php

<?
session_start();
require "1.php";
?>

1.php

<?
function fun1(){
?>
<form action="2.php" method="POST">
fam: <input type=text name="user_fam" value="<?echo $_SESSION['user_fam']?>">
<br> ... <input type=submit name="Ok" value="OK"> </form>
<?} fun1();?>

2.php

<?
session_start();
$_SESSION['user_fam']=$_POST["user_fam"];
header("Location: http://localhost/temp.php");
exit();
?>
 
Сверху