如何让浏览器的高度和宽度达到php?就像从javascript到php的数据传输?
使用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>
它不起作用。我做错了什么?
答案 0 :(得分:4)
您必须从JavaScript到PHP脚本进行AJAX调用。该PHP脚本将在当前会话中保存屏幕分辨率(您需要使用会话)。稍后请求的PHP脚本可以访问JavaScript代码段传递的屏幕分辨率。
答案 1 :(得分:2)
如果你不了解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>
或者您也可以使用表单向服务器发送信息。
答案 2 :(得分:2)
这是一个简单的ajax对象,不使用任何库。
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";
?>
答案 3 :(得分:1)
PHP在您的网络服务器上运行 PHP处理器输出HTML,将其传输到客户端浏览器 - 此时PHP 已完成。 无法做任何其他事情 浏览器现在解释HTML页面并在客户端计算机上执行javascript - 。
Javascript 无法将值传递给PHP,因为
正如其他人所提到的,此时你能做的最好的事情是将高度/宽度信息传递回服务器以便以后使用或进行AJAX调用以动态更新页面尺寸信息。
答案 4 :(得分:0)
您可以获得屏幕分辨率,但使用JavaScript NOT PHP。 PHP是服务器端的。但是,您可以使用ajax或任何其他方法将PHP传递给PHP。