如何将sql数据放入php表中

Posted

技术标签:

【中文标题】如何将sql数据放入php表中【英文标题】:How to put sql data in php table 【发布时间】:2016-05-15 13:03:34 【问题描述】:

我正在尝试用三列在 php 中制作表格,在每个图像下显示来自数据库的图像,应该有图像的描述。描述也从数据库中检索。我的代码现在可以很好地用于图像部分,它显示三个图像并排显示,然后在新行中显示接下来的三个图像,依此类推。

但是我想要这样的东西:

图像图像图像图像 DESC DESC DESC 图片 图片 图片 DESC DESC DESC

当我取消注释第 26 行时

<br/>
( //echo "< td style='background-color:#FF0004'>" . $data. "</td>";)
<br/>

我得到这样的图像旁边的描述

图像 DESC 图像 DESC 图像 DESC 图像 DESC 图像 DESC 图像 DESC

我也尝试过开始创建新行

在第 50 行之后,当图像行关闭并再次获取 sql 数据但只获取 desc 但是当我这样做时我没有得到任何结果(我 100% 确定我的 sql 中有数据)。如何让描述位于图像上方而不是图像旁边
function getImg()
    $conn = connect(); 

    if (!isset($_GET['startrow']) or !is_numeric($_GET['startrow'])) 
        $startrow = 0;
     else 
        $startrow = (int)$_GET['startrow'];
    

   $sql = "SELECT * FROM draft LIMIT $startrow, 6";
   $getdata = mysqli_query($conn,$sql) 
        or die(mysqli_error());

    $cell_img = mysqli_num_rows($getdata);
    $i=0;
    $per_row = 3; 
    echo "<table><tr>";

    while ($row=mysqli_fetch_assoc($getdata)) 
        echo "<td><img src='".$row['image']."'/ ></td>";
        $data = $row['desc'];  
        //echo "<td style='background-color:#FF0004'>" . $data. "</td>";

        if (++$i % $per_row==0 && $i >0 && $i <$cell_img) 
            echo "</tr><tr>"; 
                        
    

    echo "<tr>";
    echo "</tr>";

    for ($x=0; $x<$per_row-$i % $per_row; $x++)   
        echo "<td></td>";       
    

    echo "</tr>";
    echo "</table>";

    echo '<a href="'.$_SERVER['PHP_SELF'].'?startrow='.($startrow+5).'">Next >>></a>';
    $prev = $startrow - 5;

    if ($prev >= 0)
        echo '<a href="'.$_SERVER['PHP_SELF'].'?startrow='.$prev.'"> <<<< Previous</a>';

【问题讨论】:

从数据库中存储和检索图像不是一个好的选择。只是说:) 始终查看呈现的 html,您就会明白为什么会得到这样的结果。考虑使用类似&lt;td&gt;&lt;img ... /&gt;&lt;br /&gt;Description&lt;/td&gt; 【参考方案1】:

使用此代码:

$data = '';
while ($row=mysqli_fetch_assoc($getdata)) 
     echo "<td><img src='".$row['image']."'/ ></td>";
     $data .= '<td>'.$row['desc'].'</td>';

     if (++$i % $per_row==0 && $i >0 && $i <= $cell_img) 
          echo "</tr><tr>$data</tr><tr>"; 
          $data = '';
     
 

【讨论】:

谢谢,但这仅适用于第一行图像,第二行图像第二行(其他 3 张图像)没有显示说明

以上是关于如何将sql数据放入php表中的主要内容,如果未能解决你的问题,请参考以下文章

将 SQL 数据库中的数据显示到 php/html 表中

PDO - 使用准备好的语句将所有 sql 数据放入 html 表中

将 SQL 数据放入 HTML 表中

将代码(PHP/HTML/SQL)放入数据库的利弊? [关闭]

如何将变量值与 select 语句的结果一起放入 sql 表中?

尝试将XML文件放入SQL Server表中