以3列显示动态表数据

时间:2017-05-07 12:50:24

标签: php html mysql arrays apache

我想在3列中显示mysql表数据。我试过这段代码。但它对我没有帮助。我使用了var_dump并收到了这个输出。

array(1) { [0]=> string(5) "Gucci" } 
array(1) { [0]=> string(16) "Business Insider" } 
array(1) { [0]=> string(10) "Health.com" }
array(1) { [0]=> string(5) "Prada" } 
array(1) { [0]=> string(6) "Orbitz" } 
array(1) { [0]=> string(4) "Time" }
array(1) { [0]=> string(9) "dotTravel" } 
array(1) { [0]=> string(7) "Expedia" } 
  

注意:未定义的偏移量:第75行的C:\ xampp \ htdocs \ Store_Brand \ catscheck.php中的8       NULL

我也使用了echo并收到了这个输出:

Notice: Array to string conversion in C:\xampp\htdocs\Store_Brand\catscheck.php on line 75

MYSQL

<?php
$result = mysqli_query($con,"SELECT sm_brand_name FROM store_manufacture");
$data = Array();
while ($row = mysqli_fetch_row($result))
    $data[] = $row;

for ($i = 0; $i < count($data) / 3; $i++){ // Line 75
    echo '<table><tr>';
    for ($j = 0; $j < 3; $j++){
        echo  '<td>' . var_dump ($data[ $i + $j * 3])  . '</td>';
    }
    echo '</tr><tr>';
}
echo '</tr></table>';
?>

1 个答案:

答案 0 :(得分:1)

自从我上次看到你以后,你改变了帖子。但我是根据你原来的问题写的。这很粗糙,但至少你可以看到发生了什么......

<table>

<?php 
$con    = mysqli_connect(DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
$sql    = "SELECT * FROM yourTable";
$result = mysqli_query($con, $sql);

$i = 0;

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

    if($i == 0) {
        echo '<tr><td>' . $row[1] . '</td>';
        $i++;
    } elseif ($i == 1) {
        echo '<td>' .$row[1] . '</td>';
        $i++;
    } elseif($i == 2) {
        echo '<td>' . $row[1] . '</td></td>';
        $i = 0;
    }

}
?>

</table>

注意,如果您在查询中使用用户提供的数据,则需要使用预准备语句,这些语句与此不同。