[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Переменная есть, а не выводится
Alexsandrsk
Вот код программы:

 function browser_define($agent)
{
if(ereg('MSIE ([0-9].[0-9]{1,2})',$agent)&&!ereg('Opera ([0-9].[0-9]{1,2})',$agent)) $browser='ie';
elseif(ereg('Opera',$agent)) $browser='opera';
elseif(ereg('Netscape/',$agent)&&ereg('Gecko/',$agent)) $browser='netscape';
elseif(ereg('Gecko/',$agent)&&!ereg('Netscape/',$agent)) $browser='mozilla';
elseif(ereg('Chrome/',$agent)&&!ereg('Netscape/',$agent)) $browser='chrome';
elseif(ereg('Safari/',$agent)&&!ereg('Netscape/',$agent)) $browser='safari';
else $browser='ie';
return $browser;
}

<?php
if (!isset($_POST['screen'])) {
?>
<form action="" method="post">
<
script language="javascript">
document.write ('<input name="screen" type="hidden" value="'+ screen.width +'_'+screen.height + '"></form>');
document.forms[0].submit();
</
script>
<?php
}
if (!isset($_POST['screen'])) {
$_POST['screen'] = '';
}

?>


<LINK rel="stylesheet" type="text/css" href="css/<?=browser_define($_SERVER['HTTP_USER_AGENT']).'_';?><?php echo $_POST['screen']?>.css">

Переменная $_POST['screen'] в ссылке на ccs в OPERE и IE нормально подставляется.
В AVANTE или FIREFOXE ее просто нет на том месте
но она печатается в любом другом месте.
Что может быть, уже все перепробовал.



Спустя 1 минута, 50 секунд (11.07.2010 - 16:44) Alexsandrsk написал(а):
Саму ссылку не смотрите, что два раза использовал открывающие скобки php
просто пробовал по разному, но ни как не получается

Спустя 1 час, 20 минут, 21 секунда (11.07.2010 - 18:04) Rand написал(а):
Во первых: Функция ereg устарела и может быть удалена в следующих версиях php, используйте preg_match.
Во вторых: document.forms[0].submit() не отправляет hidden-поля. Поставьте в инпуте type="text".

Спустя 8 минут, 58 секунд (11.07.2010 - 18:13) Alexsandrsk написал(а):
В том то и дело переменные есть, но она не появляется здесь:
<LINK rel="stylesheet" type="text/css" href="css/<?=browser_define($_SERVER['HTTP_USER_AGENT']).'_'.$_POST['screen']?>.css">

Имено переменная:
$_POST['screen']

остальное все нормально

если поставить в любом месте на странице
echo $_POST['screen'];


то она печатается
все нормально
а вот в ссылку не подставляется

Спустя 1 минута, 4 секунды (11.07.2010 - 18:14) Alexsandrsk написал(а):
и не работает только в некоторых браузерах

в других все нормально

Спустя 35 минут, 57 секунд (11.07.2010 - 18:50) Rand написал(а):
Тогда не знаю. У меня всё подставляется во всех браузерах (Avant не проверял, у меня его нет).

Спустя 2 минуты, 16 секунд (11.07.2010 - 18:52) Alexsandrsk написал(а):
перепутал
в chrome у меня не идет

пишет:
<LINK rel="stylesheet" type="text/css" href="css/chrome_.css">

не подставляет переменную

а в опере нормально:
<LINK rel="stylesheet" type="text/css" href="css/opera_1280_800.css">

Спустя 7 минут, 35 секунд (11.07.2010 - 19:00) Rand написал(а):
type="text" точно пробовали? В Firefox 100% с hidden работать не будет.

Спустя 11 минут, 6 секунд (11.07.2010 - 19:11) Alexsandrsk написал(а):
да поменял

но переменная $_POST['screen'] есть
в ней лежит значение
но оно почему то не подставляется
уже все перепробовал
в одних браузерах она спокойно подставляется
в других совершено не хочет

Спустя 39 минут, 37 секунд (11.07.2010 - 19:51) Rand написал(а):
установил хром - действительно есть такая проблема, причем очень интересно - если написать
echo $_POST['screen'];

То на странице выведется разрешение, но в исходном коде этой строки не будет! Также и со стилями, в исходниках путь к стилям отображается не правильно, но на самом деле он подключается!

Спустя 4 минуты, 28 секунд (11.07.2010 - 19:55) Alexsandrsk написал(а):
Интересная ситуация
все перерыл, но не получается все нормально сделать
в самом деле цыфры прячутся
и в коде их просто нет, но на странице они отображаются

Спустя 11 часов, 7 минут, 3 секунды (12.07.2010 - 07:02) Alexsandrsk написал(а):
На данный момент протестил практически во всех популярных браузерах.
Во всех работает нормально, только вот не работает в chrome

Спустя 2 часа, 51 минута, 20 секунд (12.07.2010 - 09:54) Alexsandrsk написал(а):
А вот еще интереснее. )))
Если переменной
$_POST['screen']
к примеру выставить свое значение, к примеру:
$_POST['screen'] = '1000'; 

то это значение отобразится в коде

Спустя 1 час, 6 минут, 47 секунд (12.07.2010 - 11:00) Alexsandrsk написал(а):
Цитата (Alexsandrsk @ 12.07.2010 - 06:54)
А вот еще интереснее. )))
Если переменной
$_POST['screen']
к примеру выставить свое значение, к примеру:
$_POST['screen'] = '1000'; 

то это значение отобразится в коде

Извиняюсь за флуд.
Провел еще эксперименты
все нормально подставляется
только вот в исходном коде не отображается.
Новый баг в Chrome blink.gif

Спустя 5 месяцев, 21 день, 11 часов, 25 минут, 55 секунд (3.01.2011 - 23:26) Гость_Cooler написал(а):
type=html
Быстрый ответ:

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