php - 尝试使用 PDO 从数据库中回显数据,但它只是空白

标签 php mysql pdo

这是我的代码

类别 View .php

<table width="100%" align="center" border=0 bordercolor="#FFFFFF">
<tr><td colspan=2 align="center" bgcolor="#0000CC"><?php header_web();?></td></tr>
<tr>
	<td width="200px" valign="top" bgcolor="white"><?php menu();?></td>
	<td valign="top"><p class="judul">CATEGORIES</p>
    <?php
	try {
	  $link=connection();
	  $sql="select * from category order by name"; 
	  $result=$link->query($sql); 
	  $record=$result->fetchColumn(); 
	  if($record>0){ 
	?> 
		<div align="center" class="info">Categories found : <b><?php echo $record;?></b> Record</div>
		<table border=0 align="center">
		  <tr class="jtable"><td colspan=4>LIST OF CATEGORIES</td></tr>
		  <tr class="jtable"><td>ID</td><td>NAME</td><td>DESCRIPTION</td><td>EDIT/DELETE</td></tr>
		  <?php
		  	$i=0;
		  	while($data=$result->fetch(PDO::FETCH_ASSOC)){
		  		$i++; 
		  ?> 
		  	<tr class="<?php if($i%2==1) echo "oddtable"; else echo "eventable";?>">
		  	   <td align="center"><?php echo $data['id_category'];?></td>
		  	   <td><?php echo $data['name'];?></td> 
                           <td align="center"><?php echo $data['desc'];?></td>
                           <td align="center"><a href="category_edit.php?id_category=<?php echo $data['id_category'];?>"><img src="edit.png"></a> 
               <a href="category_del.php?id_category=<?php echo $data['id_category'];?>"><img src="delete.png"></a></td>
			   </tr>
		  <?php
		  	} 
		  ?> 
		</table>
	<?php
	}
	else {
		echo "No data is found ";
	}
	}catch(PDOException $e){
			echo $e->getMessage();
		}
	?>
	</td>
</tr>
<tr><td colspan=2  bgcolor="#FFCC00"><?php footer_web();?></td></tr>
</table>

这是 con.php 中的连接函数

function connection(){
    try{
        $link= new PDO("mysql:host=localhost;dbname=dbeorder","root","");
        $link->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    }
    catch (PDOException $e){
        echo "Error : ".$e->getMessage();
    }
    return $link;
}

它确实正确地返回了 $record=$result->fetchColumn() 的值。 但是类别表列表没有显示任何内容,只是空白。我做错了吗?

最佳答案

您不需要 fetchColumn() fetch(PDO::FETCH_ASSOC) 返回一个数组,您可以在其中使用 count()

......
$data=$result->fetch(PDO::FETCH_ASSOC);
  if(count($data)>0){ 
      ...
      foreach ($data as $data){ 
              .............. 
              <td align="center"><?php echo $data['id_category'];?></td>
              .............. 

关于php - 尝试使用 PDO 从数据库中回显数据,但它只是空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30691501/

相关文章:

php - wp_schedule_event()在类激活函数中不起作用

php - 主页和子文件夹的单个 "nav.php"

php - MySQL 错误 - InnoDB 不工作并且服务器立即关闭

PHP PDO 和存储函数

php - pdo 免费结果

PHP mySQL 从子类构造父数据

php - 使用功能删除主页上的页面标题

php - 根据 1 个输入字段自动计算 MySQL 数据价格

mysql - 如何在StatefulKnowledgeSession中插入大量事实(Drools)

php - PHP 中是否有内置方法可以从多维数组中获取数组?