PHP PDO,不包括字段值为空的行
所以我使用的是这个示例代码PHP PDO,不包括字段值为空的行,php,mysql,Php,Mysql,所以我使用的是这个示例代码output6.php 我想做的是,如果empire\u name返回null,则跳过相关行 如有任何意见或建议,将不胜感激 谢谢 在打印行之前简单地添加检查。有点像跟踪 while($ft_form_2 = $stmt->fetch()) // loop and display data { if( !empty($ft_form_2->empire_name) && !is_null($ft_form_2->empire_
output6.php
我想做的是,如果empire\u name
返回null,则跳过相关行
如有任何意见或建议,将不胜感激
谢谢
在打印行之前简单地添加检查。有点像跟踪
while($ft_form_2 = $stmt->fetch()) // loop and display data
{
if( !empty($ft_form_2->empire_name) && !is_null($ft_form_2->empire_name) )
{
$print .= '<tr>';
$print .= "<td>{$ft_form_2->empire_name}</td>";
$print .= "<td>{$ft_form_2->win}</td>";
$print .= "<td>{$ft_form_2->building_1} <br> {$ft_form_2->building_1_notes} </td>";
$print .= "<td>{$ft_form_2->building_2} <br> {$ft_form_2->building_2_notes} </td>";
$print .= "<td>{$ft_form_2->building_3} <br> {$ft_form_2->building_3_notes} </td>";
$print .= "<td>{$ft_form_2->building_4} <br> {$ft_form_2->building_4_notes} </td>";
$print .= "<td>{$ft_form_2->building_5} <br> {$ft_form_2->building_5_notes} </td>";
$print .= "<td>{$ft_form_2->building_6} <br> {$ft_form_2->building_6_notes} </td>";
$print .= "<td>{$ft_form_2->building_7} <br> {$ft_form_2->building_7_notes} </td>";
$print .= "<td>{$ft_form_2->building_8} <br> {$ft_form_2->building_8_notes} </td>";
$print .= "<td>{$ft_form_2->building_9} <br> {$ft_form_2->building_9_notes} </td>";
$print .= '</tr>';
}
}
要遵循您的使用逻辑,您在问题中提到的不是空的。你走的路是对的。从数据库中返回您想要的东西比在PHP中获取所有东西并进行过滤要高效得多
你在这里的陈述
$stmt = $conn->prepare("SELECT empire_name, win, building_1, building_2, building_3, building_4, building_5, building_6, building_7, building_8, building_9 FROM ft_form_2 ");
可以在末尾添加where条件
$stmt = $conn->prepare("SELECT empire_name, win, building_1, building_2, building_3, building_4, building_5, building_6, building_7, building_8, building_9 FROM ft_form_2 WHERE empire_name IS NOT NULL ");
然后,您的数据库将进行筛选。这同样适用于第二个示例
$stmt = $dbc->query("SELECT * FROM ft_form_2 WHERE empire_name IS NOT NULL");
@米基普。如果你觉得这有帮助,请记下我的答案
$stmt = $conn->prepare("SELECT empire_name, win, building_1, building_2, building_3, building_4, building_5, building_6, building_7, building_8, building_9 FROM ft_form_2 ");
$stmt = $conn->prepare("SELECT empire_name, win, building_1, building_2, building_3, building_4, building_5, building_6, building_7, building_8, building_9 FROM ft_form_2 WHERE empire_name IS NOT NULL ");
$stmt = $dbc->query("SELECT * FROM ft_form_2 WHERE empire_name IS NOT NULL");