php - mysql表无数据时获取消息而不是表

标签 php mysql

我对 PHP 很陌生,并且创建了一个简单的表,该表从 mysql 数据库获取数据并显示它。但是,我希望当“区域”字段没有记录时,得到一条消息“无记录”而不是表。另一方面,如果“region”字段有数据,那么表格应该正常显示。

因此,在下面的示例中,如果没有“阿尔萨斯”地区的记录,则不应出现任何表格...

原则上看起来很简单,但我似乎找不到一种方法...... .

这是我的代码:

<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$db = "tournois";


$conn = mysql_connect($dbhost, $dbuser, $dbpass)
or die("Could not connect : " . mysql_error());



mysql_select_db($db, $conn)
or die("Could not select database");

mysql_query("SET NAMES 'utf8'");
mysql_query('SET character_set_connection=utf8');
mysql_query('SET character_set_client=utf8');
mysql_query('SET character_set_results=utf8');

$query = "SELECT date, tournoi, lieu, region, prix,ritme, link FROM tournois_france WHERE region = 'Alsace'";
$result = mysql_query($query);

if ($result){?>
<table class='table table-hover'>
<tr class=info>
<th>Date</th>
<th>Tournois</th>
<th>Lieu</th>
<th>Region</th>
<th>Prix</th>
<th>Ritme</th>
</tr>

<?php while($row = mysql_fetch_array($result)) {?>
<tr>
<td><?php echo $row->Date;?></td>
<td><?php echo $row->Tournoi;?></td>
<td><?php echo $row->Lieu;?></td>
<td><?php echo $row->Region;?></td>
<td><?php echo $row->Prix;?></td>
<td><?php echo $row->Ritme;?></td>
</tr>
<?php }?>        
</table>
<?php } ?>   

最佳答案

尝试以下方法,

使用mysql_num_rows这将检查返回行数

<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$db = "tournois";


$conn = mysql_connect($dbhost, $dbuser, $dbpass)
or die("Could not connect : " . mysql_error());



mysql_select_db($db, $conn)
or die("Could not select database");

mysql_query("SET NAMES 'utf8'");
mysql_query('SET character_set_connection=utf8');
mysql_query('SET character_set_client=utf8');
mysql_query('SET character_set_results=utf8');

$query = "SELECT date, tournoi, lieu, region, prix,ritme, link FROM tournois_france WHERE region = 'Alsace'";
$result = mysql_query($query);

if (mysql_num_rows($result) !=0){?>
<table class='table table-hover'>
<tr class=info>
<th>Date</th>
<th>Tournois</th>
<th>Lieu</th>
<th>Region</th>
<th>Prix</th>
<th>Ritme</th>
</tr>

<?php while($row = mysql_fetch_array($result)) {?>
<tr>
<td><?php echo $row->Date;?></td>
<td><?php echo $row->Tournoi;?></td>
<td><?php echo $row->Lieu;?></td>
<td><?php echo $row->Region;?></td>
<td><?php echo $row->Prix;?></td>
<td><?php echo $row->Ritme;?></td>
</tr>
<?php }?>        
</table>
<?php }else{ ?>
<h4>No data found </h4>
<?php } ?>   

关于php - mysql表无数据时获取消息而不是表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32806587/

相关文章:

mysql - 如果我在 MySQL 中(而不是在应用程序中)进行加密/解密,是否真的会记录明文?

MySQL 多对多查询。是否可以?

javascript - 为什么当我单击按钮时会加载我们的页面

php - mysqli 从数组更新

php - exec ('top' , $output) 返回一个空数组?

python - 调用三个表插入数据。 (sqlite3/python)

mysql - mysql中将表列拆分为多列

php - 多个数组的插入在空值上失败

php - $this 的范围在 PHP 中是 funked 是错误还是功能?

php - 为什么 Parse 类不保存?