PHP-如果列为空变量-其他列
我的mysql数据库中有多个列,但我需要其中一列的数据。第1列或第2列中都有数据。如果两列中都有数据,则不存在任何问题 我试过下面的方法,但运气不好。我也环顾四周,似乎找不到一个简单的方法来处理这个问题PHP-如果列为空变量-其他列,php,mysql,Php,Mysql,我的mysql数据库中有多个列,但我需要其中一列的数据。第1列或第2列中都有数据。如果两列中都有数据,则不存在任何问题 我试过下面的方法,但运气不好。我也环顾四周,似乎找不到一个简单的方法来处理这个问题 <?php $query = "SELECT `column1`,`column2` FROM `table` WHERE `name` LIKE 'Jack'"; $columcheck = $query['column1']; if ($columcheck == null) {
<?php
$query = "SELECT `column1`,`column2` FROM `table` WHERE `name` LIKE 'Jack'";
$columcheck = $query['column1'];
if ($columcheck == null) {
$columcheck = $query['column2'];
}
echo $columcheck;
?>
我基本上只想回显不是空的列
提前谢谢。
Lucas。首先,您需要获取数据并实际读取数据。我为您准备了一个小函数,您可以使用它。不过你应该改进一下。如果需要的不是第一个结果,请使用预先准备好的语句,将其存储在数组中并循环,等等 还请注意,我假设使用PHP7.1+设置此函数。如果不是这样,请删除类型提示
@RahulMeshram我想应该在尝试获取任何结果之前执行查询。您实际上还没有执行您的查询…您是否尝试将查询提交到数据库以执行?然后从结果setcheck中获取行,你可以使用MySQL。我不太清楚为什么你会从内部返回,而Loop查看他的示例,他没有循环任何内容。这让我相信他只想要一个结果。读我的笔记在顶部,我已经涵盖了这个lol。
function collectData(\mysqli $connection): ?string {
if ($connection->connect_error) {
return null;
}
$result = $connection->query("SELECT `column1`,`column2` FROM `table` WHERE `name` LIKE 'Jack'");
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
if($result['column1'])
return $result['column1'];
return $result['column2'];
}
}
}