表单提交捕获到数据库不起作用

时间:2010-04-14 13:44:46

标签: php mysql html

我有一个表单上有两个按钮,一个是,一个没有,此刻我将点击的按钮捕获到数据库中,但由于某种原因,它并不总是捕获点击的按钮,我有经历了我的所有代码,一切似乎都很好,这里是表格

            <div id="mid_prompt">
            <form  action="refer.php" method="post" onsubmit="return submit_form()" >
            <div class="prompt_container" style="float: left;">
                    <span class="prompt_item"><input type="image" src="images/yes.jpg" alt="submit" name="refer" value="yes" /></span>
            </div>
            </form>

            <form action="thank_you.php" method="post" onsubmit="return submit_form()" >
            <div class="prompt_container" style="float: right;">
                    <span class="prompt_item"><input type="image" src="images/no.jpg" alt="submit" name="refer" value="no" /></span>
            </div>
            </form>
        </div>

我正在使用会话将变量一直带到表单的末尾,然后我将所有数据写入数据库,我检查了我的会话,它们似乎工作正常,唯一一个给出问题是是/否。

所以基本上我需要它每次捕获是/否。

提前完成!

3 个答案:

答案 0 :(得分:1)

如果有人点击“输入”提交表单,则无法捕获此按钮。如果这是一个数据项,最好以不同的方式捕获它,说实话,因为只有当有人在点击按钮之前点击按钮或聚焦按钮时才会有效。

按Enter键提交表单是浏览器的默认行为,虽然根据表单大小和字段类型有一些变化(例如,textarea不会在输入时提交,但输入类型=“text”将提交输入)。

也许添加一个复选框来捕获此数据项。

答案 1 :(得分:0)

你的db结构如何?列存储为布尔或整数(可能是1或0)还是varchar(3)?你需要使用varchar(3)来存储“是”。你可以通过$ _POST ['refer']捕获。

答案 2 :(得分:0)

请注意,IE&lt; 8将忽略任何<input type="image">

的“value”属性

没有解决方法,唯一的选择是不使用<input type="image">,或重载name属性并检查要传递的特定名称(请注意,仍需要一个值属性,否则某些浏览器不会发送任何内容)