Javascript экран ширина / высота в PHP - PullRequest
5 голосов
/ 03 апреля 2011

Я знаю, что это не обязательно имеет какой-то смысл, но есть ли способ запустить javascript на клиенте, найти ширину / высоту экрана активного браузера и затем передать эти переменные в сценарий PHP?

Все общеизвестные знания - это, как правило, PHP >> Javascript, я полагаю, никогда не доверяйте клиенту, и я не могу сейчас найти способ.

Это для файла .php, поэтому легко блокируется., но я не могу сделать наоборот.

Я работаю над созданием объекта JSON, но потом понял, что у меня все еще есть та же стена для лазания.

Спасибо.

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

Ответы [ 3 ]

5 голосов
/ 03 апреля 2011

Вы можете сделать это:

<script>
document.getElementById('hidden-field').value = screen.width + ',' + screen.height;
</script>

<input id="hidden-field" name="dimensions" value="" />

и отправьте форму. Вместо этого вы можете использовать AJAX для отправки этих данных, cookie, изображения и т. Д. Я лично использовал бы AJAX.

Но да, это тот случай, когда вам нужно просто довериться клиенту за чистую монету. Однако, если вы что-то делаете с этими данными (например, создаете изображение или что-то еще), вы все равно должны проверить, что значение имеет смысл, чтобы не пытаться создать изображение шириной 100 миллионов пикселей и т. Д.

2 голосов
/ 03 апреля 2011

Быстрый с JQuery

$(function(){
 $.ajax({
   url: 'file.php',
   type: 'POST',
   data: {h: screen.height, w: screen.width}
 });
});
2 голосов
/ 03 апреля 2011
<script type="text/javascript">
    document.write('<img src="index.php?width='+screen.width+'&height='+screen.height+'"/>');
</script>

(оуууу, а не AJAX :) )

Кстати, я настоятельно советую не использовать document.write вместоиспользуйте window.onload или что-то лучше из предпочитаемой вами библиотеки JS (например, jQuery(document).ready(function(){ jQuery(document.body).append("the-image-as-in-my-example"); }) в jQuery).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...