Как я могу получить высоту и ширину браузера для php? Как передача данных с javascript на php? innerHeight
с использованием innerHeight
и InnerWidth
.
(Мне просто нужно показать маленькую картинку пользователя, если у него небольшие экраны и большие, если они большие, и без данных о экранах, которые я могу сделать)
Мне это нравится:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" href="css/slideshow.css" type="text/css" /> <script> document.write('script.php?screen=' + screen.width + 'x' + screen.height'); </script> </head> <body> <?php $lol=$_GET['screen']; <?php echo "SIZE : $lol" ?> </body> </html>
И это не работает. Что я делаю неправильно?
Вам нужно будет сделать вызов AJAX с JavaScript на PHP-скрипт. Этот скрипт PHP сохранит разрешение экрана в текущем сеансе (для этого вам понадобятся сеансы). Сценарий PHP, запрошенный позже, может затем получить доступ к разрешению экрана, переданному фрагментом JavaScript.
Если вы не знаете AJAX, вы можете использовать ссылки для отправки информации на сервер с помощью метода GET.
<script language="javascript"> function load(){ document.getElementById('myAnchor').href="test2.php?sw="+screen.width+"&sh="+screen.height; } </script> <body onload="load();"> <a id="myAnchor" href="#">Send to server</a> <?php if (isset($_GET)){ print_r($_GET); } ?> </body>
Или вы также можете использовать формы для отправки информации на сервер.
Вот объект ajax smple без использования какой-либо библиотеки.
http://www.pagecolumn.com/javascript/ajax_object.htm
На стороне клиента используйте его, как,
function foo() { var screen=' + screen.width + 'x' + screen.height'; ajax.getRequest("test_get.php",["screen"], [screen],function(data){ alert(data); }); }
В PHP,
<?php $lol=$_GET['screen']; echo "SIZE : $lol"; ?>
PHP работает на вашем веб-сервере .
PHP-процессор выводит HTML, который передается в клиентский браузер .
– на этом этапе PHP закончен . Он ничего не может сделать .
Теперь браузер интерпретирует HTML-страницу и выполняет javascript – на клиентской машине .
Javascript не может передать значение PHP, потому что
Как отмечали другие люди, самое лучшее, что вы можете сделать в этот момент, – передать информацию о высоте / ширине обратно на сервер, который будет использоваться позже, или сделать вызов AJAX для динамического обновления страницы с учетом информации о размере.
Вы можете получить разрешение экрана, но с JavaScript НЕ PHP. PHP – серверный. Тем не менее, вы можете иметь значения пароля JavaScript для PHP с помощью ajax или любого другого метода.