Javascript屏幕宽度/高度到PHP

问题描述:

我知道这并不一定有任何意义,但有没有办法在客户端上运行javascript,查找活动浏览器的屏幕宽度/高度,然后将这些变量传递给一个PHP脚本?Javascript屏幕宽度/高度到PHP

所有常见的知识通常都是PHP >> Javascript,绝不相信客户端,我想我现在还找不到方法。

这是一个.php文件,很容易阻止,但我似乎无法做到相反。

我正在创建一个JSON对象,但后来意识到我仍然有同样的墙爬。

谢谢。

我发现技术之间的相互作用有点挑战作为一个业余爱好者,但它让我觉得有力的知道。也许很快我就可以用我的双手来阻止异常。那么,矩阵参考失败了,因为这是人们在第二层字面级别上所做的。

+0

你要完成传递这些变量是什么? – amosrivera 2011-04-03 01:17:46

+0

当浏览器收到答案时,php脚本通常已经被终止,所以唯一的方法就是使用AJAX或嵌入式文件并将解析信息作为参数传递。像1x1跟踪像素。 – Eliasdx 2011-04-03 01:19:42

你可以这样做:

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

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

并提交表单。您可以使用AJAX来发送数据,cookie,图像等。我个人会使用AJAX。

但是,这是一种情况,您只需要信任面值的客户。但是,如果您正在处理某些数据(如创建图像或其他内容),则应该验证该值是否合理,以便最终不会尝试创建1亿像素宽的图像等。

+0

对于最后一条建议+1。我总是保证安全,这是一个伟大的想法(尽管有点不相关)。 – Christian 2011-04-03 01:26:22

<script type="text/javascript"> 
    document.write('<img src="index.php?width='+screen.width+'&height='+screen.height+'"/>'); 
</script> 

(哦lookie这里,没有AJAX :)

顺便说一句,我强烈建议不要使用document.write,而不是要么使用window.onload或东西从你的首选JS库更好(如在jQuery中为jQuery(document).ready(function(){ jQuery(document.body).append("the-image-as-in-my-example"); }))。

快一个用jQuery

$(function(){ 
$.ajax({ 
    url: 'file.php', 
    type: 'POST', 
    data: {h: screen.height, w: screen.width} 
}); 
});