表中的成员编号不允许超过一个

时间:2015-07-18 08:19:19

标签: php mysql sql mysqli

这应该是一个相对简单的编码程序,但由于某些原因我无法使其正常工作。

我想做什么

会员参加比赛,您只能输入一次。要阻止成员多次输入,请使用以下代码

inotify

我的问题

我收到错误提示:U ndefined offset:1

我不能为我的生活弄清楚为什么会得到这个,我猜我的SQL查询是不正确的...任何建议将不胜感激

2 个答案:

答案 0 :(得分:2)

您只获取一列和一个字段,然后在循环中使用它。

只需使用它,

$sql="SELECT member_nr, count(member_nr) as entered 
      FROM competition 
      WHERE member_nr ='$memNr' and competition = '$comp' LIMIT 1";
$result = mysql_query( $sql ) or trigger_error( mysql_error() . " in " . $sql );

$isEntered = mysql_result($result,0);
if($isEntered > 1) echo "<h1>You have allready entered</h1>";

另一点是,mysql函数已被弃用。最好使用mysqli_PDO

阅读: Why shouldn't I use mysql_* functions in PHP?

答案 1 :(得分:1)

您的SQL查询是正确的。但是,您需要在脚本开头的某处将变量$isEntered初始化为0,因为如果您的表中根本找不到成员标识,它将是未定义的。

而且......

...您不应再使用mysql_..功能了。它们已被弃用。而是转到mysqli_...PDO