2016-07-26 67 views
1

我正在创建一个网站,显示一组问题,但我的问题是检查用户是否回答了问题,如果他们有,显示一个“应答”标签。PHP如果mysqli查询语句

但是,目前,即使答案不在提交表中,它也会显示每个问题的“已回答”标签。任何帮助,将不胜感激。

while($data = mysqli_fetch_row($result)){ 
    if($data[0] != null){ 
    echo(' 
    <div class="col-md-4 col-sm-5"> 
    <div class="panel panel-default text-center"> 
     <div class="panel-heading"> 
     <span class="fa-stack fa-5x"> 
      <i class="fa fa-circle fa-stack-2x text-default"></i> 
      <i class="fa fa-codepen fa-stack-1x fa-inverse"></i> 
     </span> 
     </div> 
     <div class="panel-body"> 
     '); 
     if($result4 = mysqli_query($mysqli,"SELECT * FROM submissions where teamID='$teamName' and questionID='$data[0]' and status='correct'")){ 
      echo "Answered"; 
     } else{ 
      echo "Not Answered"; 
     } 

     echo (' 
     <h4>'.$data[6].' - <small><i>'.$data[8].' points</i></small></h4> 
     <p>'.$data[7].'</p> 
     <a href="question.php?id='.$data[0].'" class="btn btn-primary btn-block">View Question </a> 
     </div> 
    </div> 
    </div> 
    ');} else{ 
    echo "No More Questions"; 
    } 
} 

我知道我在这里犯了一个基本或愚蠢的错误,所以任何帮助表示赞赏。

+0

你忘记mysqli_query(“”) –

回答

1
//Mysql query to find number of answers for particular question. 
$answercount = mysqli_query($mysqli, "SELECT * FROM submissions where teamID='$teamName' and questionID='$data[0]' and status='correct'"); 
$answercount = mysqli_num_rows($answercount); 

//PHP code 
if($answercount>0){ 
    echo "Answered"; 
} else{ 
    echo "Not Answered"; 
} 
+0

嘿,谢谢你的回应,非常感谢,我喜欢你使用的方法,但仍然没有实现我正在寻找的运气。使用您的代码,我将所有问题都视为“未回复”。 – Syn

+0

你用mysql_query函数中的$ mysqi替换了$ con吗? –

+0

你好,的确,我有,我使用可变的$ mysqli,而不是$ con。它就像它没有实际使用查询和检查,因为当我回显查询时,它显示正确的信息'SELECT * FROM提交其中teamID ='Admin'和questionID ='121'且status ='正确' 未回复 第1 - 100分 2016 cyberlympics问题 查看问题 SELECT * FROM意见书,其中teamID = '管理员' 和questionID = '129' 和状态= '正确的'' – Syn

0

你忘记mysqli_query("")

if ($result4 = mysqli_query($con, "SELECT * FROM submissions where teamID='$teamName' and questionID='$data[0]' and status='correct'")) { 
    echo "Answered"; 
} else { 
    echo "Not Answered"; 
} 
+0

对不起,我不得不在,但删除它来测试一些,但是这仍然没有解决问题。我更新了原始问题中的代码。 – Syn