php-计数表中的成员数不得超过一个

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

我想做什么

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

//Check If user allready entered comp
$sql="SELECT member_nr, count(member_nr) as entered FROM competition WHERE member_nr ='$memNr' and competition = '$comp'";
$result = MysqL_query( $sql ) or trigger_error( MysqL_error() . " in " . $sql );

while($row = MysqL_fetch_array($result)){
    $isEntered = $row['entered'];   
}//end while`

if($isEntered >1  ){
?>
    <h1>You have allready entered</h1>
<?
}//end check if entered allready

我的问题

我收到错误通知:未定义的偏移量:1

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

解决方法:

您仅获取一列和一个字段,然后为什么要在循环中使用它.

只需使用它,

$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?

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...