【发布时间】:2012-01-10 23:12:48
【问题描述】:
我现在正在学习 PHP,所以请原谅我无法解决的愚蠢问题。 我创建了一个简单的 Web 表单,其中显示了用户输入的值。
function submitform()
{
document.forms["myForm"].submit();
} // in head of html
<form action ="res.php" id="myForm" method="post" >
Name: <input type="text" name="name" size="25" maxlength="50" /> <br> </br>
Password:<input type="password" name="password" size="25" maxlength="50" />
Description: <textarea name="editor1"> </textarea>
<input type="submit" value="Submit" onclick="submitForm()" />
</form>
并且 res.php 包含:
foreach($_POST as $field => $value)
{
echo "$field = $value";
}
当我点击提交按钮时,我只是得到一个空白页面,没有任何来自表单的值。谁能告诉我我错过了什么?
【问题讨论】:
-
您甚至没有看到等号?如果是这样,你的循环永远不会被运行。您确定您的发布方法确实有效吗?您可以通过 Fiddler (fiddler2.com/fiddler2) 进行验证。
-
首先删除javascript,您不需要它来提交表单。而且由于它没有添加任何东西,因此它更有可能导致问题而不是帮助。
-
您是否尝试过不使用(不必要的)javascript submitForm() 函数?在您提供的代码中,它没有任何作用。尝试首先从提交按钮中删除“onClick”属性,因为提交按钮将简单地提交表单而无需 javascript。
-
听起来你在
res.php的某个地方遇到了错误。您的php.ini中是否将display_errors设置为On?另外,您在脚本中是否正确输入了<?php和?>? -
我相信您的表单必须具有 name="myForm" 才能使 javascript 正常工作