我是php和mysqli的新手,并且无法理解如何修复它以便正确返回。 今天早些时候,我得到了帮助,弄清楚如何使用UNION ALL始终返回一个值。 但是现在php不能正常工作。 我已经尝试了,但由于我不完全理解这一点,所以我不知道如何解决这个问题。
如果art_number感兴趣的话,它应该检查数据库中发布的art_number,它会绑定发布的art_number的结果。 但是,如果数据库中没有结果,那么它应该绑定art_number 111的结果
非常感谢您的帮助!
<?php
include 'dbc.php';
$query = "SELECT
art_price, art_header, art_pic, art_row1, art_row2, art_row3, art_row4
FROM `signs`
WHERE art_number = ?
UNION ALL
SELECT
art_price, art_header, art_pic, art_row1, art_row2, art_row3, art_row4
FROM `signs`
WHERE
art_number = 111
AND NOT EXISTS(
SELECT 1
FROM `signs`
WHERE art_number = ?
)";
if($stmt = $conn->prepare($query)){
$stmt->bind_param('s', $_POST['art_number']);
$stmt->execute();
$stmt->bind_result($rowPrice, $rowHeader, $rowPic, $rowArt1, $rowArt2, $rowArt3, $rowArt4);
while($stmt->fetch()){
?>
&#13;