尝试从PHP中的MySQL输出到Divs


Trying to Output from MySQL in PHP to Divs

我正在尝试将页面管理连接到我们的数据库,因此在管理页面页面上,它需要列出数据库中的所有页面,每行一个页面-尽可能多的页面(好吧,直到我弄清楚如何添加分页-但一步一个步骤)!

页面已全部连接到数据库。

这就是我所拥有的。

$query_all_pages = "SELECT * FROM `pages` WHERE parent_id = '0'";
$all_pages = mysql_query($query_all_pages, $con) or die(mysql_error());
$row_all_pages = mysql_fetch_assoc($all_pages);
$num_rows_all_pages = mysql_num_rows($all_pages);

该数据需要输出到的表由div组成,如下所示:

<div class="table_row"> 
<div class="td_page_name"><p><?php echo $row_all_pages['page_display_name']; ?></p></div>   
<div class="td_page_title"><p>Title Here...</p></div>
<div class="td_page_type"><p>Type...</p></div>
<div class="td_page_view"><p>View</p></div>
<div class="td_page_edit"><p>Edit</p></div>
<div class="td_page_delete"><p>Delete</p></div>
</div>

正如你所看到的,我一直试图在适当的列中显示页面列表,但经过一个小时的各种变化,我不得不承认,我真的不知道自己在这里做什么。

我不确定我是否需要在PHP中插入while循环,但如果有人能解释我应该如何根据上述变量将结果调用到适当的列中,我将永远感激。

任何帮助,不胜感激。提前感谢:)

$dbRows = array();
while ($row = mysql_fetch_assoc($all_pages)) {
    $dbRows[] = $row;
}

Then once you have all the data just do this
<?php foreach($dbRows as $row) { ?>
    <div class="table_row"> 
        <div class="table_page_name"><p><?php echo $row['page_display_name']; ?></p></div>   
        <div class="table_title"><p><?php echo $row["title"]; ?></p></div>
        <div class="table_type"><p><?php echo $row["type"]; ?></p></div>
        <div class="table_view"><p><?php echo $row["view"]; ?></p></div>
        <div class="table_edit"><p><?php echo $row["edit"]; ?></p></div>
        <div class="table_delete"><p><?php echo $row["delete"]; ?></p></div>
    </div>
<?php } ?>

你明白了。

<?php  
  $query = mysql_query("SELECT * FROM `pages` WHERE parent_id = '0'") or die(mysql_error());
    if(mysql_num_rows($query)<1) {
        echo "No results";
    }
    else {
        while($row = mysql_fetch_array($query)) { ?>
<div class="table_row"> 
<div class="td_page_name"><p><?php echo $row['page_display_name']; ?></p></div>   
<div class="td_page_title"><p>Title Here...</p></div>
<div class="td_page_type"><p>Type...</p></div>
<div class="td_page_view"><p>View</p></div>
<div class="td_page_edit"><p>Edit</p></div>
<div class="td_page_delete"><p>Delete</p></div>
</div>
        <?php }
    }
?>

尝试使用mysql_fetch_array函数

附加:

如果你想检查数据的长度(正如你提到的),你可以写一个自定义函数,如下所示:

<?php
function checkLength($str) {
   if(strlen($str)<10) {
       return $str;
   }
   else {
       return substr($str,0,10);
   }
}
?>

然后在现有代码中,调用checkLength()函数,如下所示:

<?php echo checkLength($row['page_display_name']); ?>

应该做这个把戏。