根据屏幕大小从数据库中获取不同的图像

时间:2011-09-02 08:23:10

标签: php mysql sql image mobile

我开始制作一个网络应用程序,其想法是根据网址从负载变化的文本和数据库中的图像访问它。 www.mitdomæne.dk/?id = 1 0.2 0.3等达50件。

现在的问题是,我必须让动态内容自行关闭,具体取决于手机或平板电脑(屏幕大小)。

我可以让php选择大小的屏幕并回显正确的图片吗?

因此,如果它是一个iphone,侧面看320px宽的图像加载,如果它是ipad是1024px宽。

我用这些字段创建了MySQL的日期库。

ID: 公司: Billed_fil

代码看起来像这样。

HTML:

 <div data-role="page" id="side1">
   <div data-role="header" data-nobackbtn="true"> </ div>
   <div data-role="content">
     <p class="brod"> <? php echo $ company?> </ p>
 <div id="billede"> <img src = "<? php echo $ billed_fil?>" alt = "" border = "0" /> </ div>
   </ div>
   <div data-role="footer"> </ div>
 </ div>

PHP:

 <? php

 include 'firmaer_db_cnx.inc.php';

 $ id = $ _GET ['id'];
     $ sql = mysql_query ("SELECT * FROM info_int WHERE id = '$ id'");

     $ company list = mysql_fetch_array ($ sql);

     $ id = $ company list ['id'];
     $ company = $ company list ['company'];
     $ billed_fil = $ company list ['billed_fil'];

 ?>

Sql版本 53年5月1日 PHP版本 5.3.4

有可能吗?

//卡斯帕

4 个答案:

答案 0 :(得分:0)

唯一可能获得屏幕大小的方法是通过javascript或一些熟悉的fronend编程语言,你可以使用ajax调用,将其保存到cookie然后用php读取它,或者你可以更聪明一点然后保存具有相同名称的图像,其中一个差异是结尾...这将是分辨率, 例如iamge1024x123.png然后使用javascript onload根据分辨率添加正确的图像。然后你保存对数据库的不必要的调用,并且在你使用它时可以获得一点性能提升。我希望你理解我的想法,这是为了帮助

答案 1 :(得分:0)

PHP在服务器上运行之前在客户端浏览器上运行,因此它不知道运行客户端浏览器的屏幕大小。你可能做到这一点的一种方法是通过JavaScript来检索屏幕大小并将这些值传递给PHP(通过AJAX调用?)。当然,其他SO人会提出其他想法(可能比我的好),所以你可以选择如何做。

答案 2 :(得分:0)

使用CSS可能有更简单的方法来做到这一点。看一下这个演示:

http://www.alistapart.com/d/responsive-web-design/ex/ex-site-larger.html提示:调整浏览器窗口大小。

以下是解释如何操作的Article。还有一些background info

答案 3 :(得分:0)

只需将图像存储在数据库之外就可以执行类似这样的操作

<script language="JavaScript" type="text/javascript">
if(screen.width==800 && screen.height==600){
document.images['id'].src='<? php echo $ billed_fil?>-800x600.gif';
}
else if(screen.width==1024 && screen.height==768){
document.images['id'].src='<? php echo $ billed_fil?>-1024x768.gif';
}
else{
document.images['id'].src='<? php echo $ billed_fil?>-default.gif'; 
}
</script>