Php 如何不显示空行?
我的问题是: 如果你看看它会显示在哪里“Php 如何不显示空行?,php,html,mysqli,Php,Html,Mysqli,我的问题是: 如果你看看它会显示在哪里“ 1ST " 如何确保如果行与变量“$first”关联,或者如果其他所有行都为空,则不会显示任何内容。“1号”也没有显示 我尝试过各种各样的东西,但我在这个问题上遇到了困难 放映日期: 那么这个呢: if(mysqli_num_rows($result) > 0){ while($row = mysqli_fetch_assoc($result)){ // Show the table-row } } 您做
1ST
"
如何确保如果行与变量“$first”关联,或者如果其他所有行都为空,则不会显示任何内容。“1号”也没有显示
我尝试过各种各样的东西,但我在这个问题上遇到了困难
放映日期:
那么这个呢:
if(mysqli_num_rows($result) > 0){
while($row = mysqli_fetch_assoc($result)){
// Show the table-row
}
}
您做得很好,只需对收到的每一行应用一个筛选函数:
// SO UPDATE THE QUERY TO ONLY PULL THAT SHOW'S DOGS
$query = "SELECT * FROM result
WHERE first IS NOT NULL";
$result = mysqli_query($connection, $query);
if (!$result) {
trigger_error("Query Failed! SQL: $query - Error: ". mysqli_error($connection), E_USER_ERROR);
} else {
// Fetch results into array
$data = mysqli_fetch_all($result, MYSQLI_ASSOC);
// If results array is not empty
if ($data) {
echo '<table class="table" border="0"></div>
<tr>
<td>
<strong><?php echo $class_name ?></strong> - <h6>Entries: <?php echo $entries ?> Absentees: <?php echo $absentee ?></h6>
</td>
<td></td>
</tr>';
// Now let's walk through every record
array_walk($data, function($dogRecord) {
// Here we apply array_filter to each dog record, so that empty values (i.e. those evaluating to false) are filtered out
$dogRecord = array_filter($dogRecord);
// Now loop throw $dogRecord to build table
$collation = [
'DCC' => 'DCC',
'RDCC' => 'RDCC',
'BCC' => 'BCC',
'RBCC' => 'RBCC',
'BOB' => 'BOB',
'BP' => 'BOB',
'BJ' => 'BOB',
'1ST' => 'first',
'2ND' => 'second',
'3RD' => 'third',
'RES' => 'RES',
'VHC' => 'RES'
];
foreach ($dogRecord as $property => $value) {
echo '<tr>
<td>'.$collation[$property].'</td>
<td>'.$value.'</td>
</tr>';
}
});
echo '</table>';
}
}
//所以更新查询,只拉那个节目的狗
$query=“从结果中选择*
其中第一个不为空”;
$result=mysqli\u查询($connection,$query);
如果(!$result){
trigger_error(“查询失败!SQL:$Query-error:.mysqli_error($connection),E_USER_error”);
}否则{
//将结果提取到数组中
$data=mysqli\u fetch\u all($result,mysqli\u ASSOC);
//如果结果数组不为空
如果($数据){
回声'
-条目:缺席人员:
';
//现在让我们浏览每一张唱片
数组_walk($data,function($dogRecord){
//在这里,我们对每个dog记录应用array_filter,以便过滤掉空值(即那些计算为false的值)
$dogRecord=数组过滤器($dogRecord);
//现在循环抛出$dogRecord来构建表
$collation=[
“DCC”=>“DCC”,
“RDCC”=>“RDCC”,
“密件抄送”=>“密件抄送”,
“RBCC”=>“RBCC”,
'鲍勃'=>'鲍勃',
“BP”=>“BOB”,
“BJ”=>“BOB”,
“第一”=>“第一”,
“第二”=>“第二”,
“第三”=>“第三”,
'RES'=>'RES',
“VHC”=>“RES”
];
foreach($dogRecord作为$property=>$value){
回声'
“.$collation[$property]”
“.$value。”
';
}
});
回声';
}
}
请注意,我使用的不是简单的foreach
循环,而是array\u walk
函数。这是因为,由于您为每个记录提取变量,因此每次都需要未声明(即未占用)的变量。以下代码将迭代结果中的每一行(while循环)和每一行(foreach循环)中的每一个key=>值;然后,它将检查值是否不为null或键是否不等于“first”(if语句),并在table元素中回显结果。我不确定我是否完全理解你的问题,但我希望这在某种程度上有所帮助
<table>
<?php
if($result){
while($row = mysqli_fetch_assoc($result))
foreach($row as $key => $value){
if($value != null && $key != 'first'){
echo '<tr>';
echo '<td>' . $key . '</td>';
echo '<td>' . $value . '</td>';
echo '</tr>';
}
}
}
?>
</table>
(pseudo'ish):如果(行为空){…}
或三元运算符。当它们为空时,不会显示任何内容。还是要删除整个html表行?然后,您需要在每个条件周围添加条件。为什么要将数组复制到不同的变量?你也可以使用下面的数组。@jeroen也许他们会对给出的答案做出反应;我得走了,你不能再清楚一点吗?如果行的所有值都是空的,或者只有一个值是空的,那么您不想显示该行吗?我不认为这是问题所在;请重新阅读。基本上,如果该行为空,则不会显示第1行或第2行,否则将导致堆栈溢出!虽然这个代码片段可以解决这个问题,但它没有解释为什么或者如何回答这个问题。请,因为这确实有助于提高你的文章质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。标记者/审阅者:
<table>
<?php
if($result){
while($row = mysqli_fetch_assoc($result))
foreach($row as $key => $value){
if($value != null && $key != 'first'){
echo '<tr>';
echo '<td>' . $key . '</td>';
echo '<td>' . $value . '</td>';
echo '</tr>';
}
}
}
?>
</table>