PHP脚本是否可以传递Javascript收集的值?
我只是想如果Javacript可以捕获用户的屏幕分辨率,我可以使用该值来运行PHP(IF和Else函数)来加载某个php文件吗?
要有清楚的解释,
PHP#1& #2有728像素宽的google adsense广告 而PHP#3的宽度为300px google adsense广告
这可能吗?非常感激您的帮忙。非常感谢你! :)
答案 0 :(得分:1)
您不必使用PHP。
也许是这样的?:
if ((screen.width>=1024) && (screen.height>=768))
{
window.location="highres.html";
}
else
{
window.location="lowres.html";
}
如果必须使用PHP,则可以进行简单的Ajax调用。
答案 1 :(得分:1)
当然有可能。首先加载包含获得解析的脚本的页面,然后使用POST或GET发送值,然后返回所需的内容。
我建议使用一些ajax,否则如果页面加载两次会对用户造成干扰。
答案 2 :(得分:1)
您可以通过两种方式执行此操作:
无论如何,不需要PHP
答案 3 :(得分:0)
您可以使用JQuery脚本加载页面并让PHP返回正确的html文件。 然后你打电话给这样的话:
$.post("page.php", {sel:"cond1", dpiy: dpi_y, dpix: dpi_x}, function(j)
{
//load form
$("#ext_page").html(j);
});
答案 4 :(得分:0)
其他答案集中在AJAX上 - 为了一些adsense广告 - 虽然比较清晰,但可能比实际需要的解决方案更复杂 - 为了完整起见,有一个便宜又简单的替代方案:转储一切首先到页面,然后决定如何处理它。
例如。在您的HTML中:
<div id="ADgt1200" style="display:none;">
<!-- adsense code-->
</div>
<div id="ADgt1920" style="display:none;">
<!-- adsense code-->
</div>
<div id="ADlt1200" style="display:none;">
<!-- adsense code-->
</div>
然后在你的Javascript中:
//pseudo
if(whatever.width > 1200)
document.getElementById('ADgt1200').style.display = 'block';
else { /* etc... */ }
回应你的评论:
这只是一个原始的例子,基于同样的原则,没有理由不能将adsense代码存储在javascript变量中......
<script>
var myAdsense = [
'gt1200': '<adsense/>',
'gt1920': '<code/>',
'lt1200': '<block/>'
];
window.onload = function(){
if(whatever.width > 1200)
document.getElementById('myEl').innerHTML = myAdsense['gt1200'];
// etc.
};
</script>
<div id="myEl"></div>
...因此,除非您这样说,否则没有任何代码实际加载到DOM中。
答案 5 :(得分:0)
我猜不仅有一个页面要放置这个逻辑。这就是我要做的事情:
检查$ _SESSION ['screen-res']中的屏幕分辨率是否可用。如果没有,则将浏览器重定向到“check-screen-res.php”。这个PHP文件应该有相关的javascript代码来检测屏幕分辨率,然后使用变量'screen-res'将它存储在会话中。
如果您的会话中有屏幕分辨率,那么您很高兴。只需使用它来包含您想要的任何PHP文件。
当然,如果用户在您访问网站时更改了分辨率,则此策略将无效。如果检测到屏幕分辨率变化,您可以通过提高适当的事件来处理这个问题;如果是这样,请相应地更新会话变量,等等。
希望这会有所帮助。如果这是你想要遵循的策略,请告诉我,我很乐意用一些php / javascript代码更新这个帖子。