使用php显示图像

时间:2015-01-08 18:51:36

标签: php html image printing

我对html / php规则有愚蠢的问题。我尝试使用此表从apache服务器显示此代码的图像:

<?php

    //code

    while($row = mysqli_fetch_array($result)) {

        echo ' 
            <tr>        
              <td> '.$row['x'].' </td>
              <td> '.$row['y'].' </td>
              <td> '.$row['z'].' </td>
              <td> '.$row['f'].' </td>
              <td> '.$row['g'].' </td>
              <td> '.$row['d'].' </td>
              <td><img src=\"<?php echo $url; ?>\"/></td>
            </tr>';

}

//code

?>

但是很明显,内部php脚本被认为是普通文本,没有运行!

5 个答案:

答案 0 :(得分:1)

您已经在PHP中 - 您不应该打开另一个<?php范围:

  echo ' 
      <tr>      
      <td> '.$row['x'].' </td>
      <td> '.$row['y'].' </td>
      <td> '.$row['z'].' </td>
      <td> '.$row['f'].' </td>
      <td> '.$row['g'].' </td>
      <td> '.$row['d'].' </td>
      <td><img src="' .$url . '"/></td>
      </tr>';

答案 1 :(得分:1)

不要像PHP那样回应PHP中的大块HTML。这是不好的做法。不,实际上,这是一种可怕的做法。而是学会根据需要打开和关闭PHP标记,例如:

<?php
//code..code...code...
while($row = mysqli_fetch_array($result))
{
?>                        
  <tr>      
    <td> <?php echo $row['x']; ?> </td>
    <td> <?php echo $row['y']; ?> </td>
    <td> <?php echo $row['z']; ?> </td>
    <td> <?php echo $row['f']; ?> </td>
    <td> <?php echo $row['g']; ?> </td>
    <td> <?php echo $row['d']; ?> </td>
    <td><img src="<?php echo $url; ?>"/></td>
  </tr>
<?php
}
//code..code...code
?>

这有几个好处,包括它不太可能破坏语法突出显示,并且你的代码不会被遍布尽可能多的\"

答案 2 :(得分:0)

只需改变一下:

<td><img src=\"<?php echo $url; ?>\"/></td>

为:

<td><img src="' . $url .'"/></td>

答案 3 :(得分:0)

试一试:

<?php

while($row = mysqli_fetch_array($result)){

                          echo ' 
                              <tr>      
                              <td> '.$row['x'].' </td>
                              <td> '.$row['y'].' </td>
                              <td> '.$row['z'].' </td>
                              <td> '.$row['f'].' </td>
                              <td> '.$row['g'].' </td>
                              <td> '.$row['d'].' </td>
                              <td><img src="'.$url.'"/></td>
                              </tr>';
}
?>

这只是连接中的一个问题,你只需要组合这些字符串,而不是设置另一个'echo script'。

答案 4 :(得分:0)

你可以简单地关闭php部分并放置普通的html,然后在需要时重新打开php,如下所示:

<?php
$test = array( "a test","also","a","test");
$itteraror = 0;
$url = "#";
?>
<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-GB" lang="en-GB">
<head>
</head>
<body>
<table>
<?php
while($itteraror<sizeof($test)) {
?>
            <tr>
              <td> <?php echo $test[$itteraror] ; ?></td>
              <td> <?php echo $test[$itteraror] ; ?> </td>
              <td> <?php echo $test[$itteraror] ; ?> </td>
              <td> <?php echo $test[$itteraror] ; ?> </td>
              <td> <?php echo $test[$itteraror] ; ?> </td>
              <td> <?php echo $test[$itteraror] ; ?> </td>
              <td><img src="<?php echo $url ; ?>" alt="my image"></td>
            </tr>

<?php
$itteraror++;
}


?>
</table>
</body>
</html>

我确实对您的代码进行了一些修改,以使其独立用于测试目的。