发布网友 发布时间:2022-04-28 02:51
共3个回答
热心网友 时间:2022-04-28 04:20
问题出在$screenX= "<script>document.write(screen.width);</script>"上,变量$screenX的值并不是执行JavaScript语句后的结果,如1024,你这样定义$screenX,是把字符串<script>document.write(screen.width);</script>赋给了$screenX,再用intval()函数来转换,当然得出了是0.
告诉你一种方法,把JavaScript得到的值写到cookie里,再通过PHP来拿这个cookie值,JavaScript的变量是不能直接赋值给PHP的。
例如:
<script>
document.cookie("screen",screen.width);
</script>
PHP里
<?php
$screen = $_COOKIE['screen'];
echo intval($screen);
?>
大概的思路是这样的。
=========================================================
昨天JavaScript写cookie的语法我写错了,我在公司调试了一下,下面的代码是没有问题的。首次进入页面时请刷新一下页面。
<script type="text/javascript">
var width = window.screen.width;
document.cookie="screen="+width;
</script>
<?php
$screen = $_COOKIE['screen'];
echo intval($screen);
?>
热心网友 时间:2022-04-28 05:38
你想获取客户端的显示器分辨率 ?
换个方法实现吧
<script type="text/javascript">
document.write('<img src="screen.php?w='+window.screen.width+'&h='+window.screen.height+'"/>');
</script>
然后 screen.php 用 $_GET 就可以获取到了。
热心网友 时间:2022-04-28 07:13
哈哈,根本不是代码问题, 是执行顺序问题
js 是前台代码,php是服务器程序
先运行完php程序输出到浏览器后,才执行js
所以你思路错了