Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Танцы с бубном вокруг разрешения экрана
Форумы портала PHP.SU » » HTTP и PHP » Танцы с бубном вокруг разрешения экрана

Страниц (1): [1]
 

1. beza - 18 Ноября, 2014 - 10:06:57 - перейти к сообщению
Определяю разрешение экрана следующим образом:
$width='<script>var ScreenWidth = screen.width; document.write(ScreenWidth);</script>';
echo $width

выводитсся текущая ширина (например, 1280)

При попытке
$width=width*2;
echo $width

результат - "0"

Видимо, проблема в том, что значение в $width хранится в текстовом формате

попытка вылечить с помощью
$width=(int)$width;
результата не принесла.

Как возможно решить данную проблему?
2. Мелкий - 18 Ноября, 2014 - 10:21:38 - перейти к сообщению
beza пишет:
Видимо, проблема в том, что значение в $width хранится в текстовом формате

Проблема в том, что в $width значения нет вообще.
http://phpfaq[dot]ru/na_tanke
3. beza - 18 Ноября, 2014 - 10:38:11 - перейти к сообщению
Мелкий пишет:
beza пишет:
Видимо, проблема в том, что значение в $width хранится в текстовом формате

Проблема в том, что в $width значения нет вообще.
http://phpfaq.ru/na_tanke


Спасибо.
Если я правильно понял - данная переменная существует только на компьютере пользователя, а не на сервере...
А есть ли какая-то возможность получить разрешение у пользователя БЕЗ ПЕРЕЗАГРУЗКИ страницы?
4. Viper - 18 Ноября, 2014 - 15:13:51 - перейти к сообщению
beza пишет:
получить разрешение у пользователя БЕЗ ПЕРЕЗАГРУЗКИ страницы
javascript
5. beza - 18 Ноября, 2014 - 19:52:39 - перейти к сообщению
Viper пишет:
beza пишет:
получить разрешение у пользователя БЕЗ ПЕРЕЗАГРУЗКИ страницы
javascript


ну так я ведь и получаю с помощью скрипта:
$width='<script>var ScreenWidth = screen.width; document.write(ScreenWidth);</script>';

а как его передать в php?
6. esterio - 18 Ноября, 2014 - 19:57:42 - перейти к сообщению
ajax (гугл в помощь)
7. beza - 24 Ноября, 2014 - 10:29:37 - перейти к сообщению
вот, нашел, работает, м.б. кому сгодится.
Правда без перезагрузки никак...

<?

// проверяем существование переменных $width и $height
if (isset($_GET['width']) AND isset($_GET['height'])) {
// если переменные существуют, то выводим полученные значения на экран
echo 'Ширина экрана: ' . $_GET['width']*2 . "<br />\n";
echo 'Высота экрана: ' . $_GET['height'] . "<br />\n";
}

// если переменные не существуют, то выполняем следующее
else {
// PHP сгенерирует код JavaScript, который обработает браузер
// пользователя и передаст значения обратно PHP-скрипту через протокол HTTP
echo "<script language='javascript'>\n";
echo " location.href=\"${_SERVER['SCRIPT_NAME']}?${_SERVER['QUERY_STRING']}"
. "&width=\" + screen.width + \"&height=\" + screen.height;\n";
echo "</script>\n";
}

?>
8. DelphinPRO - 25 Ноября, 2014 - 05:05:50 - перейти к сообщению
вопрос: зачем вам разрешение пользователя?

 

Powered by ExBB FM 1.0 RC1