Test

Содержание
  1. Как должен выглядеть код PHP для запроса разрешение браузера клиента?
  2. Получение разрешения экрана с помощью PHP
  3. Ответ 1
  4. Ответ 2
  5. Ответ 3
  6. Ответ 4
  7. ‘; echo ‘My headline’; echo ‘
  8. ‘; echo ‘My headline’; echo ‘ ‘; ?> Это приведет к выводу заголовка меньшего размера, если экран составляет 480 пикселей или меньше. Поэтому нет необходимости передавать какие-либо переменные с помощью JS или аналогичного клиентского скрипта. Ответ 5 Это очень простой процесс. Да, вы не можете получить ширину и высоту в PHP. Однако JQuery может предоставить ширину и высоту экрана. Сначала перейдите на https://github.com/carhartl/jquery-cookie и получите jquery.cookie.js. Вот пример использования php для получения ширины и высоты экрана: "; > else echo " "; foreach($clientProps as $p) < // создать выходную таблицу echo " ".ucwords(str_replace('.',' ',$p)).": ".$_POST[str_replace('.','',$p)]." "; > echo " "; > ?> window.history.replaceState(null,null); // избежать предупреждения формы, если пользователь нажимает кнопку обновить Возвращенные данные extract преобразованы в переменные. Например: window.innerWidth возвращается в $windowinnerWidth Мы будем очень благодарны если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями. Источник Как заполучить размеры экрана пользователя через PHP Через PHP данную задачу не решить, но можно поступить хитрее и воспользоваться финтом, который представлен в этом уроке. Делаем AJAX запрос на сторону PHP скрипта, передав нужную нам информацию: $(function() < $.post('some_script.php', < width: screen.width, height:screen.height >, function(json) < if(json.outcome == 'success') < // запрос прошёл успешно >else < alert('Unable to let PHP know what the screen resolution is!'); >>,'json'); >); Далее обрабатываем информацию на стороне сервера: if(isset($_POST['width']) && isset($_POST['height'])) < $_SESSION['screen_width'] = $_POST['width']; $_SESSION['screen_height'] = $_POST['height']; echo json_encode(array('outcome'=>'success')); > else < echo json_encode(array('outcome'=>'error','error'=>"Couldn't save dimension info")); > Данный урок подготовлен для вас командой сайта ruseller.com Источник урока: http://stackoverflow.com/questions/1504459/getting-the-screen-resolution-using-php Перевел: Станислав Протасевич Урок создан: 20 Декабря 2015 Просмотров: 15309 Правила перепечатки 5 последних уроков рубрики "PHP" Фильтрация данных с помощью zend-filter Когда речь идёт о безопасности веб-сайта, то фраза "фильтруйте всё, экранируйте всё" всегда будет актуальна. Сегодня поговорим о фильтрации данных. Контекстное экранирование с помощью zend-escaper Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода. Подключение Zend модулей к Expressive Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей. Совет: отправка информации в Google Analytics через API Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке. Подборка PHP песочниц Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт. Источник Как определить ширину экрана PHP Часто бывает нужно заранее знать ширину экрана. В CSS за это отвечает тэг @media. Например, если Вы не хотите показывать блок класса .rightBanner на экранах уже 1000px , Вы просто пишете И браузер, получив такой CSS от сервера, скроет блок .rightBanner на узких экранах. Определить реальную текущую ширину экрана можно с помощью JavaScript про это есть статья Но, что если Вы вообще не хотите отдавать браузеру какой-то контент. To сэкономить трафик или ускорить загрузку страницы. Встаёт вопрос - как определить ширину экрана уже на этапе формирования ответа сервера. Ответ - никак. По крайне мере если Вам нужна точная ширина и Вы не планируете делать финты с AJAX. Если Вам просто нужно понять зашёл ли посетитель с мобильного устройства или с десктопа - это я покажу ниже Пример кода на PHP Результат Если браузер клиента передал один из упомянутых заголовков, то правый блок вообще не будет ему послан. Комментарии к коду preg_match возвращает 1 если найдёт в $_SERVER["HTTP_USER_AGENT"] один из перечисленных заголовков: android, avantgo, blackberry и так далее. В таком случае $not_mobile это 0 или FALSE и условие if не выолняется. Список заголовков наверняка уже устарел, когда Вы читаете эту статью, но, во-первых, Вы сами можете его дополнить. Во-вторых нужны ли все возможные заголовки или достаточно основных решать Вам. Если Вы не собираетесь использовать функцию повторно, можно ограничиться строчкой: $not_mobile = !(preg_match("/(android|avantgo|blackberry|bolt|boost|cricket|docomo|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\.browser|up\.link|webos|wos)/i", $_SERVER["HTTP_USER_AGENT"])); Ваш HTTP_USER_AGENT В следующем блоке вы можете увидеть свой HTTP_USER_AGENT Mozilla/5.0 (X11; NetBSD) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36 Проверка - распознал ли скрипт ваше устройство как мобильное или нет Ваше устройство не распознано как мобильное Если скрипт неверно распознал ваше устройство - напишите мне в телеграм @andreyolegovichru Источник
  9. Ответ 5
  10. Как заполучить размеры экрана пользователя через PHP
  11. 5 последних уроков рубрики "PHP"
  12. Фильтрация данных с помощью zend-filter
  13. Контекстное экранирование с помощью zend-escaper
  14. Подключение Zend модулей к Expressive
  15. Совет: отправка информации в Google Analytics через API
  16. Подборка PHP песочниц
  17. Как определить ширину экрана PHP
  18. Пример кода на PHP
  19. Результат
  20. Комментарии к коду
  21. Ваш HTTP_USER_AGENT
Читайте также:  Webpack css unexpected character

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

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

  

PHP плохо знаю, но как понимаю нужно просто прочитать ширину, потом по условию = else false
Что то вроде того

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

Представляете сколько можно сэкономить времени на загрузку страницы отдавая клиенту значительно меньшие по размеру изображения зная размер экрана клиента.

Hereigo

\n"; echo "Высота экрана: ". $_GET['height'] ."
\n"; > else < // передаем переменные с размерами echo "\n"; exit(); > ?>

Вам это для чего?
если для дизайна, почитайте в сторону адаптивной верстки и CSSqueries

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

все что ушло на клиент (а JS отрабатывает только на клиенте) обратно в php уже не получить. Только AJAX-ом отправить данные на сервер с клиента.

Isolution666

Хорошо, допустим я гуру в media css, и я знаю как сделать сайт адаптивным. С точки зрения логики, я хотел бы некоторые элементы для телефона не «дисплэйнойнить», прости господи, а чтобы их вообще не было, даже в коде, даже в комментариях кода, вообще нигде. Во-первых, чтобы не грузить телефон лишним контентом, чтобы быстрее грузился, и ещё, к примеру есть скрипт, который при загрузке картинки на сайт, делает ресайз на 5 размеров, от оригенала до суперлёгкого превью, так вот, с точки зрения безопасности:
код по типу

Читайте также:  Парсить csv файл python

Не безопасен! ибо хакеры и xss-атаки не дремлют. Наровясь напихать всякой дряни.
РАЗ
Подставлять преффиксы через функцию класса, — зная размер экрана, значительно легче
ДВА.
То есть, зная размер экрана, убирается вся шелуха одним махом. Картинки — мелкие
Не нужные для мобильной версии блоки — отсутствуют.
Юзеру комфортно
Владельцу — спокойно
И все счастливы ))
Админ.
Короче, надо без всякого говнокода знать размер экрана, чтобы даже когда javascript отключён, всё рендерится и статистика просмотров идёт, как это сделать на php — до сих пор голову ломаю.

Источник

Получение разрешения экрана с помощью PHP

Мне нужно определить разрешение экрана пользователя, который посещает мой веб-сайт. Как это сделать?

Ответ 1

Вы не можете этого сделать с чистым PHP. Вы должны сделать это с помощью JavaScript. О том, как это сделать, написано множество статей.

По сути, вы можете установить cookie или даже использовать Ajax для отправки информации в PHP-скрипт. Если вы используете jQuery, вы можете сделать это примерно так:

jquery:

$(function()

$.post(‘some_script.php’, < width: screen.width, height:screen.height >, function(json)

if(json.outcome == ‘success’)

// Возможн о чт о-либо сделать с этими значениями?

> else

alert(‘Невозможно определить в PHP разрешение экрана!’);

>

>,’json’);

>);

PHP (some_script.php)

// Например, вы можете сделать что-то вроде этого:

if(isset($_POST[‘width’]) && isset($_POST[‘height’]))

$_SESSION[‘screen_width’] = $_POST[‘width’];

$_SESSION[‘screen_height’] = $_POST[‘height’];

echo json_encode(array(‘outcome’=>’success’));

> else

echo json_encode(array(‘outcome’=>’error’,’error’=>»Couldn’t save dimension info»));

>

?>

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

Ответ 2

Непосредственно с PHP невозможно, но.

Я пишу этот простой код для сохранения разрешения экрана в сеансе PHP для использования в галерее изображений.

Читайте также:  Html code for h1 font color

session_start();

if(isset($_SESSION[‘screen_width’]) AND isset($_SESSION[‘screen_height’]))

echo ‘Разрешение экрана пользователя: ‘ . $_SESSION[‘screen_width’] . ‘x’ . $_SESSION[‘screen_height’];

> else if(isset($_REQUEST[‘width’]) AND isset($_REQUEST[‘height’]))

$_SESSION[‘screen_width’] = $_REQUEST[‘width’];

$_SESSION[‘screen_height’] = $_REQUEST[‘height’];

header(‘Location: ‘ . $_SERVER[‘PHP_SELF’]);

> else

echo ‘window.location = «‘ . $_SERVER[‘PHP_SELF’] . ‘?width=»+screen.width+»&height font-size: 14px; color: #1a0e95; display: table-row-group;» dir=»ltr»> >

?>

Новое решение. Если вам нужно отправить другой параметр в Get Method :

session_start();

if(isset($_SESSION[‘screen_width’]) AND isset($_SESSION[‘screen_height’]))

echo ‘Разрешение экрана пользователя: ‘ . $_SESSION[‘screen_width’] . ‘x’ . $_SESSION[‘screen_height’];

print_r($_GET);

> else if(isset($_GET[‘width’]) AND isset($_GET[‘height’]))

$_SESSION[‘screen_width’] = $_GET[‘width’];

$_SESSION[‘screen_height’] = $_GET[‘height’];

$x=$_SERVER[«REQUEST_URI»];

$parsed = parse_url($x);

$query = $parsed[‘query’];

parse_str($query, $params);

unset($params[‘width’]);

unset($params[‘height’]);

$string = http_build_query($params);

$domain=$_SERVER[‘PHP_SELF’].»?».$string;

header(‘Location: ‘ . $domain);

> else

$x=$_SERVER[«REQUEST_URI»];

$parsed = parse_url($x);

$query = $parsed[‘query’];

parse_str($query, $params);

unset($params[‘width’]);

unset($params[‘height’]);

$string = http_build_query($params);

$domain=$_SERVER[‘PHP_SELF’].»?».$string;

echo ‘window.location = «‘ . $domain . ‘&width=»+screen.width+»&height font-size: 14px; color: #1a0e95; display: table-row-group;» dir=»ltr»> >

?>

Ответ 3

PHP — это серверный язык , он выполняется только на сервере, а результирующий вывод программы отправляется клиенту. Таким образом, информация об «экране клиента» недоступна.

Тем не менее, вы можете попросить клиента сообщить вам, какое у него разрешение экрана, через JavaScript. Напишите небольшой скриптлет для отправки вам screen.width и screen.height – возможно, через AJAX или, что более вероятно, с начальной «страницей перехода», которая находит его, а затем перенаправляет на http://example.net/index.php?size= AxB

Говоря как пользователь, я бы предпочел, чтобы вы разработали сайт, который бы нормально работал с любым разрешением экрана. Я просматриваю окна разного размера, в основном не развернутые.

Ответ 4

Я обнаружил, что использование CSS для моего html внутри моего php помогло мне.

echo ‘

‘;

echo ‘My headline’;

echo ‘

‘;

echo ‘

‘;

echo ‘My headline’;

echo ‘

‘;

?>

Это приведет к выводу заголовка меньшего размера, если экран составляет 480 пикселей или меньше. Поэтому нет необходимости передавать какие-либо переменные с помощью JS или аналогичного клиентского скрипта.

Ответ 5

Это очень простой процесс. Да, вы не можете получить ширину и высоту в PHP. Однако JQuery может предоставить ширину и высоту экрана. Сначала перейдите на https://github.com/carhartl/jquery-cookie и получите jquery.cookie.js. Вот пример использования php для получения ширины и высоты экрана:

";

> else

echo "

";

foreach($clientProps as $p) < // создать выходную таблицу

echo "

";

>

echo "

".ucwords(str_replace('.',' ',$p)).": ".$_POST[str_replace('.','',$p)]."

";

>

?>

window.history.replaceState(null,null); // избежать предупреждения формы, если пользователь нажимает кнопку обновить

Возвращенные данные extract преобразованы в переменные. Например:

window.innerWidth возвращается в $windowinnerWidth

Мы будем очень благодарны

если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.

Источник

Как заполучить размеры экрана пользователя через PHP

Через PHP данную задачу не решить, но можно поступить хитрее и воспользоваться финтом, который представлен в этом уроке.

Делаем AJAX запрос на сторону PHP скрипта, передав нужную нам информацию:

$(function() < $.post('some_script.php', < width: screen.width, height:screen.height >, function(json) < if(json.outcome == 'success') < // запрос прошёл успешно >else < alert('Unable to let PHP know what the screen resolution is!'); >>,'json'); >);

Далее обрабатываем информацию на стороне сервера:

if(isset($_POST['width']) && isset($_POST['height'])) < $_SESSION['screen_width'] = $_POST['width']; $_SESSION['screen_height'] = $_POST['height']; echo json_encode(array('outcome'=>'success')); > else < echo json_encode(array('outcome'=>'error','error'=>"Couldn't save dimension info")); >

Данный урок подготовлен для вас командой сайта ruseller.com
Источник урока: http://stackoverflow.com/questions/1504459/getting-the-screen-resolution-using-php
Перевел: Станислав Протасевич
Урок создан: 20 Декабря 2015
Просмотров: 15309
Правила перепечатки

5 последних уроков рубрики "PHP"

Фильтрация данных с помощью zend-filter

Когда речь идёт о безопасности веб-сайта, то фраза "фильтруйте всё, экранируйте всё" всегда будет актуальна. Сегодня поговорим о фильтрации данных.

Контекстное экранирование с помощью zend-escaper

Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

Подключение Zend модулей к Expressive

Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

Совет: отправка информации в Google Analytics через API

Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке.

Подборка PHP песочниц

Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

Источник

Как определить ширину экрана PHP

Часто бывает нужно заранее знать ширину экрана. В CSS за это отвечает тэг @media.

Например, если Вы не хотите показывать блок класса .rightBanner на экранах уже 1000px , Вы просто пишете

И браузер, получив такой CSS от сервера, скроет блок .rightBanner на узких экранах.

Определить реальную текущую ширину экрана можно с помощью JavaScript про это есть статья

Но, что если Вы вообще не хотите отдавать браузеру какой-то контент. To сэкономить трафик или ускорить загрузку страницы.

Встаёт вопрос - как определить ширину экрана уже на этапе формирования ответа сервера.

Ответ - никак. По крайне мере если Вам нужна точная ширина и Вы не планируете делать финты с AJAX.

Если Вам просто нужно понять зашёл ли посетитель с мобильного устройства или с десктопа - это я покажу ниже

Пример кода на PHP

Результат

Если браузер клиента передал один из упомянутых заголовков, то правый блок вообще не будет ему послан.

Комментарии к коду

preg_match возвращает 1 если найдёт в $_SERVER["HTTP_USER_AGENT"] один из перечисленных заголовков: android, avantgo, blackberry и так далее.

В таком случае $not_mobile это 0 или FALSE и условие if не выолняется.

Список заголовков наверняка уже устарел, когда Вы читаете эту статью, но, во-первых, Вы сами можете его дополнить. Во-вторых нужны ли все возможные заголовки или достаточно основных решать Вам.

Если Вы не собираетесь использовать функцию повторно, можно ограничиться строчкой:

$not_mobile = !(preg_match("/(android|avantgo|blackberry|bolt|boost|cricket|docomo|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\.browser|up\.link|webos|wos)/i", $_SERVER["HTTP_USER_AGENT"]));

Ваш HTTP_USER_AGENT

В следующем блоке вы можете увидеть свой HTTP_USER_AGENT

Mozilla/5.0 (X11; NetBSD) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36

Проверка - распознал ли скрипт ваше устройство как мобильное или нет

Ваше устройство не распознано как мобильное

Если скрипт неверно распознал ваше устройство - напишите мне в телеграм @andreyolegovichru

Источник

Оцените статью