Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Проблеммы с использованием сессий

Сообщения:  [1-2] 

 
 автор: Рома   (14.01.2010 в 21:38)   письмо автору
 
   для: diez   (14.01.2010 в 21:26)
 

зачем вы открываете сессию внутри функции? Объявите ее один раз в начале каждого скрипта. Вы же сначала спрашиваете есть ли нужная переменая сессии, а потом только объявляете старт сессии

  Ответить  
 
 автор: diez   (14.01.2010 в 21:26)   письмо автору
 
 

Задача простая, но где то косячит...
Итак надо просто запихнуть из $_REQUEST['id'] в переменную сессии $id, ну и собственно использовать $id потом в других разделах.
Если $_REQUEST['id'] нет то по умолчанию $_SESSION['id']=1.
При этом $_REQUEST['id'] только на главной странице, на остальный передавать $_REQUESТ'ом не надо (сессии короче),а
использовать только куки черевато.... Итак вот что я наделал:

<?php 
        
    
function create_id()
    {
        if (    empty (
$_REQUEST['id'])    )
                    {
                        if(  !empty(
$_SESSION['id']) )/* с другой страницы */
                            
{
                                @
session_start();
                                global 
$id;
                                
$id $_SESSION['id'];
                                
$_SESSION['id'] = $id;
                                }
                            else                         
/* in type */
                                    
{
                                    @
session_start();
                                    unset(
$id);
                                    
$_SESSION['id'] = 1;
                                    global 
$id;
                                    
$id $_SESSION['id'];
                                    }
                        
                        }
            else{                                        
/*   с внешней сслыки  */
                    
@session_start();
                    
$_SESSION['id'] = $_REQUEST['id'];
                    global 
$id;
                    
$id $_SESSION['id'];
                }
                    return 
$id;
        }
    echo 
create_id();
        
    
?>

Вот так. Добавил собственно эту функцию на каждую страцицу где нужно использовать $id - не работает,
т.е. на странице куда передается $_REQUEST['id'] все нормально, но при переходе на другую страницу, или даже на другую ссылку
главной страницы успешно сосзданная пеменная сессии 'id' теряется.
P.S. Заранее спасибо.

  Ответить  

Сообщения:  [1-2] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования