如何根据屏幕大小在php中调整图像大小?

时间:2019-05-12 10:09:27

标签: php html css

已经问过这种类型的问题,但没有一个非常有用。在这里,我正在使用php从数据库中获取图像并显示它。我希望图像根据屏幕尺寸进行调整,并且应具有最大宽度限制。我应该如何在php中做到这一点?我尽了最大努力,但是没有成功。

<?php
    $searchword=$_POST['searchword'];
    $con=mysqli_connect('localhost','root','','bookspyramid');
?>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<?php
$sql="SELECT imgno FROM bookinfo where bookname='$searchword'";
if($result=mysqli_query($con,$sql))
{
  if(mysqli_num_rows($result)>0)
  {
     while($row=mysqli_fetch_array($result))
      {  
        $imgname=$row['imgno'];
        echo "<img src=imgfile/".$imgname." height= width= >";
      }
  }
}
else
  echo "Sorry! No results found!";
?>
</body>
</html>

图像正在显示并且具有固定的尺寸,但是我希望它的尺寸​​根据屏幕尺寸而改变。

1 个答案:

答案 0 :(得分:1)

为此,请通过CSS使用相对大小(例如80%等)。

您还可以调整其他属性,例如alignment, position, max-width, max-height等。它将根据可用尺寸调整图像。

<?php
    $searchword=$_POST['searchword'];
    $con=mysqli_connect('localhost','root','','bookspyramid');
?>
<html>
<head>
<style>
  .myImg {
      max-width:100%;
      width: 80%;
      height: auto; 
      margin: auto auto; /* align center */
   }
</style>

<meta name="viewport" content="width=device-width, initial-scale=1"/>
<?php
$sql="SELECT imgno FROM bookinfo where bookname='$searchword'";
if($result=mysqli_query($con,$sql))
{
  if(mysqli_num_rows($result)>0)
  {
     while($row=mysqli_fetch_array($result))
      {  
        $imgname=$row['imgno'];
        echo "<img class='myImg' src='imgfile/".$imgname."'>"; //add '' inside "" around imgfile to avoid img name errors
      }
  }
}
else
  echo "Sorry! No results found!";
?>
</body>
</html>

您也可以为此使用内联CSS

echo "<img style='width:80%; height: auto; max-width: 100%; margin: auto;' 
 src='imgfile/".$imgname."'>";