【问题标题】:trouble with the index PHP索引PHP的问题
【发布时间】:2012-06-05 22:40:10
【问题描述】:
for($c=1;$c<=$num;$c++)
{

$row=mysql_fetch_array(mysql_query("SELECT * FROM `$quiztitle` WHERE id=$c"));

        if($row['answer']==$_POST['answer'][$c]) // NOT WORKING
            {
                echo "correct";
                echo "<br>";
            }

        else
            {
                echo "incorrect";
                echo "<br>";
            }
    }

在显示“不工作”的行上, 索引 [$c] 没有从循环中获取值。 但是当我指定它并将其更改为 $_POST['answer1'] 时,它正在工作。 正确的语法是什么?

【问题讨论】:

  • 仅供参考,循环执行查询不是最好的解决方案。
  • 那您有什么建议吗?
  • 不太清楚你是如何处理整个过程的。但是您可以通过使用 (WHERE id IN (1,2,3,,n) 或 WHERE id >0 AND id

标签: php post syntax indexing


【解决方案1】:

试试这个。

for($c=1;$c

 $row=mysql_fetch_array(mysql_query("SELECT * FROM `$quiztitle` WHERE id=$c"));

    if($row['answer']==$_POST['answer'.$c]) // NOT WORKING
        {
            echo "correct";
            echo "<br>";
        }

    else
        {
            echo "incorrect";
            echo "<br>";
        }
}

【讨论】:

    【解决方案2】:

    您在这里将“答案”视为一个数组,并在其中查找索引。

    您想要连接该值。

    if($row['answer']==$_POST["answer{$c}'])
    

    【讨论】:

      【解决方案3】:

      根据您的记录,您似乎想要:

      $_POST["answer$c"]
      

      【讨论】:

        【解决方案4】:

        正确的是:

        if ($row['answer'] == $_POST['answer' . $c]) {
          ....
        }
        

        【讨论】:

          猜你喜欢
          • 2011-07-04
          • 2011-03-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多