Php 无论结果如何,只显示1个变量的IF语句
我有一个网站,用户可以加入组并发布与该组相关的主题,我有一个问题,无论用户结果如何,它只显示“成员”,即使在数据库中没有记录的测试帐户上,是否有人可以解释我做错了什么,谢谢Php 无论结果如何,只显示1个变量的IF语句,php,mysql,Php,Mysql,我有一个网站,用户可以加入组并发布与该组相关的主题,我有一个问题,无论用户结果如何,它只显示“成员”,即使在数据库中没有记录的测试帐户上,是否有人可以解释我做错了什么,谢谢 <?php $id = $_GET['gid']; $user = $_SESSION['user_id']; $iropen = "SELECT * FROM `group_users` WHERE user_id='$user' AND group_id='$id'"; $resultg = mysql_que
<?php
$id = $_GET['gid'];
$user = $_SESSION['user_id'];
$iropen = "SELECT * FROM `group_users` WHERE user_id='$user' AND group_id='$id'";
$resultg = mysql_query($iropen);
$rows = mysql_fetch_array($resultg);
if ($rows['accepted'] = 1) {
echo 'member';
} else {
echo 'pending';
}
if ($resultg < 1) {
echo 'join';
}
?>
这里需要两个==
if ($rows['accepted'] == 1) {
PHP的运算符参考,如果需要:
这里需要两个==
if ($rows['accepted'] == 1) {
PHP的运算符引用(如果需要):@vinodadhikary的意思是,在第一个if子句中,您使用了单等号而不是双等号。应该是:
if($rows['accepted']==1).vinodadhikary的意思是在第一个if子句中使用单等号而不是双等号。应该是:
如果($rows['accepted']==1)
<?php
$id = $_GET['gid'];
$user = $_SESSION['user_id'];
$iropen = "SELECT * FROM `group_users` WHERE user_id='".$user."' AND group_id='".$id."'";
if($resultg = mysql_query($iropen)){
$rows = mysql_fetch_array($resultg)
}
if (mysql_num_rows($resultg) < 1) {
echo 'join';
}else if ($rows['accepted'] == 1) {
echo 'member';
} else {
echo 'pending';
}
?>
试试这个
<?php
$id = $_GET['gid'];
$user = $_SESSION['user_id'];
$iropen = "SELECT * FROM `group_users` WHERE user_id='".$user."' AND group_id='".$id."'";
if($resultg = mysql_query($iropen)){
$rows = mysql_fetch_array($resultg)
}
if (mysql_num_rows($resultg) < 1) {
echo 'join';
}else if ($rows['accepted'] == 1) {
echo 'member';
} else {
echo 'pending';
}
?>
您想在if
语句中使用比较运算符而不是赋值运算符。您想在if
语句中使用比较运算符而不是赋值运算符。谢谢,这让我更接近了,现在在数据库中没有任何记录的帐户上,它显示的是“挂起”而不是“加入”。而旧的PHPif($var=$something)
再次出现。当我看到这些东西时,它总是让我满脸笑容……谢谢,这让我更接近了,现在在数据库中没有任何记录的帐户上,它显示的是“挂起”而不是“加入”。而旧的PHPif($var=$something)
再次出现。当我看到这些照片的时候,我总是笑逐颜开……谢谢,我试了一下,但成功了。警告:mysql_fetch_array()希望参数1是resource,第7行的/**/includes/widgets/group_panel.php中给出的布尔值警告:mysql_num_rows()希望参数1是resource,第9行的/**/includes/widgets/group_panel.php中给出的布尔值请查看更新。我已经改变了我的答案。替换if($resultg=mysql\u query($iropen)){$rows=mysql\u fetch\u array($resultg);}
而不是$resultg=mysql\u query($iropen)$rows=mysql\u fetch\u数组($resultg)代码>谢谢我试了一下,但成功了。警告:mysql_fetch_array()希望参数1是resource,第7行的/**/includes/widgets/group_panel.php中给出的布尔值警告:mysql_num_rows()希望参数1是resource,第9行的/**/includes/widgets/group_panel.php中给出的布尔值请查看更新。我已经改变了我的答案。替换if($resultg=mysql\u query($iropen)){$rows=mysql\u fetch\u array($resultg);}
而不是$resultg=mysql\u query($iropen)$rows=mysql\u fetch\u数组($resultg)
即使我要查找的数据库中的值是0或1,这是否也适用?正如您在本文的其他地方所看到的,当您希望使变量包含值($a=1)时,使用单等号。双等号是当你问一个问题时:$a==1意味着“a中的值是数字1吗?”如果有帮助,你可以这样看:$a?=1(?=意味着“它相等吗?”)。同样如前所述,人们犯这种错误并不罕见。这只是需要一些时间来适应-很快,你就会变得自然/习惯(grin)。即使我要查找的数据库中的值是0或1,这也适用吗?正如你在本文其他地方看到的那样-当你想让变量包含值($a=1)时,单等号就是。双等号是当你问一个问题时:$a==1意味着“a中的值是数字1吗?”如果有帮助,你可以这样看:$a?=1(?=意味着“它相等吗?”)。同样如前所述,人们犯这种错误并不罕见。只是需要一些时间来适应——很快,你就会习惯了(咧嘴笑)。