@andreystrelkov

Как должен выглядеть код PHP для запроса разрешение браузера клиента?

Добрый день, помогите пожалуйста
у меня задача, узнать у клиента/посетителя ширину браузера, если она меньше или равна 1024 то нужно вернуть TRUE
Т.е. php код со встроенным javascript
Пытался гуглить, нагуглил

<script>  
    width=document.body.clientWidth; // ширина  
    height=document.body.clientHeight; // высота  
    alert ("Разрешение окна клиента: "+width+"x"+height);  
</script>


PHP плохо знаю, но как понимаю нужно просто прочитать ширину, потом по условию =<1024 then return true
else false
Что то вроде того
  • Вопрос задан
  • 30445 просмотров
Пригласить эксперта
Ответы на вопрос 6
@OziJ
Какая задача? Задача? Зачем?

В настоящее время требуется уменьшать размер контента для тех же мобильных устройств.
Например:
На странице слайдер с изображением размерами 1920x500 пикс. в формате *.jpg весом в 40-50 Кбайт., 3 штуки – 150 Кб.

Представляете сколько можно сэкономить времени на загрузку страницы отдавая клиенту значительно меньшие по размеру изображения зная размер экрана клиента.
Ответ написан
Комментировать
Hereigo
@Hereigo
Пишу на C# + Asp.Net (MVC) + .Net Core
Попробуйте такой вариант :
<?php
if (isset($_GET['width']) AND isset($_GET['height'])) {
    // выводим переменные с размерами
    echo "Ширина экрана: ". $_GET['width'] ."<br />\n";
    echo "Высота экрана: ". $_GET['height'] ."<br />\n";
} else {
    // передаем переменные с размерами
    echo "<script language='javascript'>\n";
    echo "  location.href=\"${_SERVER['SCRIPT_NAME']}?${_SERVER['QUERY_STRING']}"
        . "&width=\" + screen.width + \"&height=\" + screen.height;\n";
    echo "</script>\n";
    exit();
}
?>
Ответ написан
Комментировать
@maxyc_webber
Web-программист
Вам это для чего?
если для дизайна, почитайте в сторону адаптивной верстки и CSSqueries

если для работы, то такое предложение, но оно плохое:
1. загружается php файл.
2. в самом начале проверяете куки.
2.1. если куки найдены, то в куках написано ваше разрешение экрана
2.2. если куки не найдены, то
2.2.1 перебрасываете пользователя на отдельную страницу, на которой яваскриптом определяется разрешение. это разрешение записывается в куку яваскриптом (читай $.cookie) и снова пользователя перебрасываем назад.

но это бред.
Ответ написан
Комментировать
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
все что ушло на клиент (а JS отрабатывает только на клиенте) обратно в php уже не получить. Только AJAX-ом отправить данные на сервер с клиента.
Ответ написан
как сказал @Fesor на php это не узнать. Советую прежде чем спрашивать что-то, написать еще для чего вам это нужно. Тогда бы вам сразу сказали, что это решается с помощью css или js.
Ответ написан
Комментировать
@beta3-z
Какую задачу Вы решаете, т.е. для чего необходимо узнать размер экрана?
Куда и в каком виде Вам нужно вернуть признак true/false?

PHP обрабатывает запросы на стороне сервера.
JavaScript - на стороне клиента.
Чтобы передать какие-либо данные из JavaScript, необходимо обратиться к серверу, для чего потребуется выполнить HTTP-запрос. Как сказал @Fesor, это будет либо ajax, либо, как в примере @Hereigo, переход по ссылке. Суть одна - будет выполнен запрос к серверу с переданными в GET/POST-параметрами значениями высоты/ширины.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы