0

我正在制作一个测验系统,当我尝试从 HTML 表单的 $_POST 插入问题文本时,它只是插入一个空值,并且 question_id 保持为零:

        Question text: <br />
                    <textarea name="qtext" rows="2" style="width:200px; height:100px;" name="qst"></textarea> <br />

PHP部分

$post_qtext = $_POST['qst'];
$post_qtext = mysql_real_escape_string($post_qtext);
    $q_insertquestions = mysql_query("INSERT INTO `questions` (`question`,`type`) VALUES ('$post_qtext','1')");
$q_lastquestioninserted = mysql_insert_id($q_insertquestions);

表中的 question_id 是 int(11) mysql 中的问题是 varchar(60)

4

3 回答 3

4

textarea 有name="qtext",但 PHP 有$_POST['qst'];.

您需要访问与字段名称相同的数组索引。

…我现在看到它name="qst"。不允许在单个元素上两次使用相同的属性。浏览器可能会也可能不会从此错误中恢复。您应该使用验证器

于 2013-01-21T12:32:15.620 回答
0

您在 HTML 页面中写了两次 name 更改它并将您的文本区域名称更改为 qst

<textarea name="qst" rows="2" style="width:200px; height:100px;"></textarea> <br />
于 2013-01-21T12:34:30.197 回答
0

因为你添加了两个名字textarea

name="qst"从中删除textarea

<textarea name="qtext" rows="2" style="width:200px; height:100px;"></textarea> 

并这样做:

$post_qtext = $_POST['qtext'];
于 2013-01-21T12:34:48.583 回答