Это легко сделать с помощью куки. Этот метод позволяет странице проверять сохраненные значения файлов cookie по высоте и ширине экрана (или значениям высоты и ширины порта просмотра в браузере), и, если они отличаются, он сбрасывает файлы cookie и перезагружает страницу. Код должен учитывать пользовательские настройки. Если постоянные файлы cookie отключены, используйте файл cookie сеанса. Если это не сработает, вы должны перейти с настройкой по умолчанию.
- Javascript: проверьте, установлены ли cookie-файлы высоты и ширины
- Javascript: если установлено, проверьте, соответствует ли screen.height & screen.width (или как вы хотите) текущему значению файла cookie
- Javascript: если cookie не установлен или не соответствует текущему значению, то:
а. Javascript: создайте постоянный или сессионный файл cookie с именем (например, «shw») для значения текущего screen.height & screen.width.
б. Javascript: перенаправить на SELF с помощью window.location.reload (). Когда он перезагрузится, он пропустит шаг 3.
- PHP: $ _COOKIE ['shw'] содержит значения.
- Продолжить с PHP
Например, я использую некоторые распространенные функции cookie, найденные в Интернете. Убедитесь, что setCookie возвращает правильные значения.
Я поставил этот код сразу после тега head. Очевидно, что функция должна быть в исходном файле.
<head>
<script src="/include/cookielib.js"></script>
<script type=text/javascript>
function setScreenHWCookie() {
// Function to set persistant (default) or session cookie with screen ht & width
// Returns true if cookie matches screen ht & width or if valid cookie created
// Returns false if cannot create a cookies.
var ok = getCookie( "shw");
var shw_value = screen.height+"px:"+screen.width+"px";
if ( ! ok || ok != shw_value ) {
var expires = 7 // days
var ok = setCookie( "shw", shw_value, expires)
if ( ok == "" ) {
// not possible to set persistent cookie
expires = 0
ok = setCookie( "shw", shw_value, expires)
if ( ok == "" ) return false // not possible to set session cookie
}
window.location.reload();
}
return true;
}
setScreenHWCookie();
</script>
....
<?php
if( isset($_COOKIE["shw"])) {
$hw_values = $_COOKIE["shw"];
}