在开始之前,我正在学习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”,它正确地获得了值。
任何帮助表示感谢。
答案 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);