IF声明不确定我做错了什么

时间:2013-09-07 12:15:16

标签: php sql if-statement

在开始之前,我正在学习PHP / Mysql,所以在尝试使用mysqli并研究正确的安全步骤之前,我正在努力学习和理解所有这些,所以我知道这段代码会有洞。< /强>

基本上我正在实现一个成员组系统,我正在尝试编写代码以便...

如果某个成员在该群组中,则显示“群组成员” 如果成员不在该组中,则“加入组” 如果会员已经请求加入,但接受仍然= 0(待定)显示“邀请待定”。

到目前为止,这是我的代码,它位于include中。

<?php

$id = $_GET['gid'];
$gruser = $_SESSION['user_id'];

$group = "SELECT * FROM `disc_users` WHERE user_id='$gruser' AND group_id='$id'";
$gres = mysql_query($group);

if ($gres == 0) { ?>
<input type="button" class="sub-button" value="Join Group">
<? 
} 
if ($gres == 1) { ?>
<input type="button" class="sub-button" value="Group Member">
<? } ?>

我无法弄清楚我做错了什么,它没有显示错误,但我得到的是空格,没有按钮,我甚至在$ group前添加了“echo”,它正确地获得了值。

任何帮助表示感谢。

2 个答案:

答案 0 :(得分:0)

你不能简单地比较你必须使用mysql_fetch_row等的mysql_query结果,但在你的情况下可能是这样的:

<?php

    $id = $_GET['gid'];
    $gruser = $_SESSION['user_id'];

    $group = "SELECT * FROM `disc_users` WHERE user_id='$gruser' AND group_id='$id'";
    $gres = mysql_query($group);

    if (mysql_num_rows($gres) < 0) { ?>
    <input type="button" class="sub-button" value="Join Group">
    <? 
    } 
    else{ ?>
    <input type="button" class="sub-button" value="Group Member">
    <? } ?>

答案 1 :(得分:0)

mysql查询总是以数组形式返回,在首先将数组分解为单个变量之前,无法在if语句中对它们进行比较。

你可以使用mysql_num_rows,$num_rows = mysql_num_rows($gres);