我想从我的数据库的2个表中回显一些数据,但我的第二个表“images”的数据不会显示出来。
我得到了什么:
网页:
<div id="wrapper">
<?php
include_once $_SERVER["DOCUMENT_ROOT"] . "/config.php";
$title = str_replace ('-', ' ', $_GET['title']);
$sql = "SELECT * FROM `articles` WHERE title = '$title'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
?>
<div class="content-title">
<?php echo $row['title'];?>
</div>
<div class="content-text">
<?php echo $row['text'];?>
<?php
$imagesql = "SELECT * FROM `images` WHERE image-title = '$title'";
$imageresult = $conn->query($imagesql);
if ($imageresult->num_rows > 0) {
while($imagerow = mysqli_fetch_array($imageresult)) {
?>
<a class="swipebox" href="<?php echo $imagerow['image-path'];?>" title="<?php echo $imagerow['image-title'];?>">
<img alt="image" src="<?php echo $imagerow['image-path'];?>"></a>
<?php
}// end while
}// end if
else {
echo '0 results';
}// end else
?>
</div> //end content-text
<br>
<?php
}// end while
}// end if
else {
echo '0 results';
}// end else
?>
<?php
// close the connection
$conn->close();
?>
</div> // end wrapper
确切的问题:
从表“文章”中回显标题和文本工作正常,但是当我尝试回显表“images”中的数据时出现了错误,因为它给出了错误“0结果”。 PHP和SQL对我来说仍然是新的,我无法找到解决方案......
答案 0 :(得分:3)
在MySQL中使用带反引号的空格,连字符(等)转义标识符:
SELECT * FROM `images` WHERE `image-title` = '$title'