微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐