[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сессия и буфферизация
twin
Вот простенький и незатейливый код:
PHP
<?php
session_start
();
$_SESSION['language'] = isset($_POST['language'])?$_POST['language']:"ru";
if(isset(
$_GET['lan']))
{
ob_start();
include_once(
"language.html");    
$language ob_get_contents();    
ob_end_clean();
}
ob_start();
$ready_lang "Язык сайта ".$_SESSION['language'];
include(
"menu.html");
$buffer ob_get_contents();  
ob_end_clean();
echo 
$buffer;

Соответственно language.html

HTML
<form action="?" id="lan" method="post">
Выбрать язык<br>
<select name="language" onchange="document.getElementById('lan').submit()">
<option value="ru" >Русский</option>
<option value="en" >Английский</option>
<option value="ukr" >Украинский</option>
</select>
</form>

ну и menu.html
HTML
<h4><a href="?lan=1">Язык сайта</a></h4>
<?php echo $ready_lang ?>
<?php echo $language ?>

(Это выжимка, по этому упрощать нельзя)
Так вот что я имею из этих поползновений на хостинге: Бумц Сиречь двойной вывод. Странно это всё... Хостер пока не ответил, может быть кто нибудь сталкивался с таким глюком, и знает как его победить?














Спустя 1 час, 8 минут, 32 секунды (23.02.2009 - 08:05) Sylex написал(а):
а ob_end_clean() что вернул? попробуй включить вывод нотисов

Спустя 3 минуты, 12 секунд (23.02.2009 - 08:09) Sylex написал(а):
и вообще странно, ты делаешь, зачем ob_start() 2 раза...

Спустя 1 час, 52 минуты, 26 секунд (23.02.2009 - 10:01) twin написал(а):
Нотисы включены, возвращает единицу, а два раза, потому что это выжимка, сам код большой и длинный, там это нужно.
Дома все норм работает, видимо все таки хостинг глючить. А хостеры молчат, то ли празднуют, то ли не могут сами понять...

Спустя 1 час, 6 минут, 20 секунд (23.02.2009 - 11:07) twin написал(а):
Трабла до смеху простая, может кто столкнется в будущем:
Нельзя оказывается одинаковые имена у переменной сессии и подключаемого файла.

Спустя 8 часов, 41 минута, 13 секунд (23.02.2009 - 19:49) Sylex написал(а):
Цитата (twin @ 23.02.2009 - 14:07)
Трабла до смеху простая, может кто столкнется в будущем:
Нельзя оказывается одинаковые имена у переменной сессии и подключаемого файла.

blink.gif
а дома почему работает??

Спустя 8 минут, 34 секунды (23.02.2009 - 19:57) twin написал(а):
Я не знаю, но пробовал на трех хостингах - картина одна. А дома норм.

Спустя 5 минут, 22 секунды (23.02.2009 - 20:02) Viking написал(а):
гыг
а расширение переменной сессии какую нибудь роль играет? smile.gif

Спустя 1 час, 6 минут, 51 секунда (23.02.2009 - 21:09) Alchemist написал(а):
расширение - не играет, а вот register_globals - да. Если он включен, то для всех переменных в сессии автоматически создаются ссылки(references) в глобальном скопе.


_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.