-1

可能重复:
“不能将字符串偏移量用作数组”错误

    <?php

        $marks  = 0;
        $total  = $_POST["lines"];
        $quesA  = $_POST["ques"];
        $quesNo = 1;
        $opt    = array("","A","B","C","D");

        for ($i = 0; $i < $total; $i++)
        {
            $q = $quesA[$i][0]; // here error

    ...

在这里,我现在分配$quesA = $_POST["ques"];它需要一个变量$q = $quesA[$i][0];,然后在线打印

echo "<div><b style='color:red;'>Q" . $quesNo . " : </b>"
     . "<span style='color:blue;'>" . $q ."</span></div>"
;

这是我的代码:https ://dl.dropbox.com/u/24972447/onlineQuiz.7z

4

2 回答 2

0

$quesA=$_POST["ques"];

$quesA 是一个字符串,而不是多维数组,因此 $quesA[$i] 为您提供字符串的第 (i+1) 个字符(错误消息的“字符串偏移量”)。

您不能对此使用索引运算符。

于 2012-09-23T19:41:22.350 回答
0

问题是这$quesA[$i]不是一个有效的数组,您正试图像数组一样使用它。

我不确定你是如何得到的,$_POST["ques"]但你需要确保它是一个数组,然后才能访问它。

发布您的期望,$_POST["lines"]$_POST["ques"];可能会提供进一步的帮助

于 2012-09-23T19:41:36.393 回答