嗨我知道php是服务器端的东西......但我想知道如何通过php获取用户屏幕宽度。 我在网上搜索,他们说我必须一起使用javascript和php。 但我不知道如何工作。 请以最简单的方式告诉我通过php获取用户的屏幕宽度。 如果它只能通过javascript完成,那么告诉我将javascript的宽度变量传递给整数格式的php变量(不是字符串)。
请告诉我代码吧...我真的搞砸了这一切...... 谢谢:))
答案 0 :(得分:2)
完全php
无法使用javascript
,但也可能需要使用<?php
session_start();
if(isset($_SESSION['screen_width']) AND isset($_SESSION['screen_height'])){
echo 'User resolution: ' . $_SESSION['screen_width'] . 'x' . $_SESSION['screen_height'];
} else if(isset($_REQUEST['width']) AND isset($_REQUEST['height'])) {
$_SESSION['screen_width'] = $_REQUEST['width'];
$_SESSION['screen_height'] = $_REQUEST['height'];
header('Location: ' . $_SERVER['PHP_SELF']);
} else {
echo '<script type="text/javascript">window.location = "' . $_SERVER['PHP_SELF'] . '?width="+screen.width+"&height="+screen.height;</script>';
}
?>
无论如何试试这个
{{1}}
答案 1 :(得分:1)
我不确定,但它可以帮到你
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
var width = $(window).width();
//This is ajax code which will send width to your php page in the screenWidth variable
$.ajax({
url: "example.php", //this will be your php page
data : {screenwidth:width}
}).done(function() {
$(this).addClass("done");
});
</script>
//example.php code is here :
<?php
echo $width = $_REQUEST['screenwidth'];
?>
答案 2 :(得分:0)
我同意依靠客户的屏幕宽度是一个坏主意,但在这里,为了您的启发:
的javascript:
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","set_screen_width.php?s="+screen.width,false);
xmlhttp.send();
如果您在加载页面时执行此脚本,它将检查屏幕宽度并将其发送到您的php文件,该文件需要类似于:
<?PHP
session_start();
$_SESSION['screen']['width']=$_GET['s'];
?>
然后,所有其他PHP页面都可以访问$ _SESSION变量vis:
<?PHP
session_start();
$screen_width=$_SESSION['screen']['width'];
等...
最好不要尝试发送只在一个屏幕宽度上看起来很好的HTML。你可以,但这是一场失败的比赛。你只是不知道客户会用它做什么。例如,假设他们视力低下,喜欢使用更大的字体。