【发布时间】:2013-08-06 18:59:54
【问题描述】:
当我运行以下代码时,它会执行!但是,有一个问题。 if($photoIDdislike["magic"] == 1) 不起作用,为什么程序说 if 语句是错误的。我的逻辑错误是什么,我该如何解决它才能使代码正常工作。
<?php
$con = mysqli_connect("127.0.0.1:3306","root","root","photoshare");
$query = "SELECT ID,nickname,photoLikes FROM tbl_photo";
$result = mysqli_query($con,$query);
$query_dislike = "SELECT idGivenLike, nickname, magic FROM tbl_check_like";
$resultDislike = mysqli_query($con,$query_dislike);
$photoIDdislike;
$photoID;
while($photoID = mysqli_fetch_assoc ($result))
{
if(mysqli_fetch_assoc($resultDislike)!= null)
{
while($photoIDdislike = mysqli_fetch_assoc($resultDislike))
{
//checks if both of results
if($photoID["ID"] == $photoIDdislike["idGivenLike"])
{
if($photoIDdislike["magic"] == 1)
{
echo '<a href=img/'.$photoID["ID"].'.php><img src="uploads/'.$photoID["ID"].'.jpg" alt="Picture" class="photo" width="800" height="600"/></a>
</br>
התמונה הועלתה על ידי '.$photoID["nickname"].'
<form action="unlike.php" method="POST" >
<input type="image" src="img/unlike.png" width="20" height="20" name="submit" value="'.$photoID["ID"].'"/>
לייקים:'.$photoID["photoLikes"].'
</form>
';
}
}
}
}
else
echo '<a href=img/'.$photoID["ID"].'.php><img src="uploads/'.$photoID["ID"].'.jpg" alt="Picture" class="photo" width="800" height="600"/></a>
</br>
התמונה הועלתה על ידי '.$photoID["nickname"].'
<form action="like.php" method="POST" >
<input type="image" src="img/like.jpg" width="20" height="20" name="submit" value="'.$photoID["ID"].'"/>
לייקים:'.$photoID["photoLikes"].'
</form>
';
}
?>
我的数据库结构: tbl_check_like: idGivenLink |昵称 |魔术(说如果他给了喜欢)
tbl_照片: 身份证 |昵称 |照片名称 |照片喜欢 |照片链接 |照片删除链接
【问题讨论】:
-
这个无法回答,请贴出你的数据库结构。
-
如果 if 中的表达式总是返回 false,你应该调试它,看看为什么你的魔法变量没有被设置为 1。
-
@matt3141 我已经添加了我的数据库结构(每个数据库的所有列)。 ID - idGiveLink 是照片的 ID
-
@Renan 但是当我完成 INSERT 命令将魔法值更改为一时,它应该总是返回真正的魔法。
-
@Yoni 当人们挑战现实时很可爱,因为它不符合他们的愿望。我一直在努力希望天空也变成绿色,但到目前为止没有成功...... “但应该”是懒惰的言论。很明显,它的行为不像你想要的那样。所以去那里调试一下,直到你找出为什么没有设置
**1**。