表单未提交 php echo
Form does not submit with php echo
我有以下代码:
index.php
<?php
if (isset($_POST['post'])) {
echo "<script>alert(".$_POST['val1'].")</script>";
}
?>
<html>
...
<body>
...
<?php
echo "<form id='form_id' method='post' name='myform'>";
echo "<input id='val1' type='text' value='7'>";
echo "<input id='submit' type='submit' value='submit'>";
echo "</form>";
?>
...
<body>
</html>
这将创建一个表单、一个文本字段和一个提交按钮。除了不提交表格外,所有这些都显示得很好。所以我的问题是为什么我的表格在这里不起作用,我应该怎么做才能解决这个问题而不将其从 php.
移出
问题是您缺少元素的 name
属性:
<?php
if (isset($_POST['post'])) {
echo "<script>alert(".$_POST['val1'].")</script>";
}
?>
<html>
...
<body>
...
<?php
echo "<form id='form_id' method='post' name='myform'>";
echo "<input id='val1' name='val1' type='text' value='7'>";
echo "<input id='submit' name='post' type='submit' value='submit'>";
echo "</form>";
?>
...
<body>
</html>
您可以注意到为文本字段和提交按钮添加了 name
属性。仅 name
属性将用于在发布表单时标识字段。
除了 Thamilan 关于 name 属性的回答之外,您还应该使用 empty($POST['val1']) 而不是 isset.
这是一个完整的工作示例:
<!DOCTYPE html>
<head>
<?php
if (empty($_POST['val1']))
print "<title>Not yet submitted</title>";
else
{
echo "<script>alert(".$_POST['val1'].")</script>";
echo "<title>Submitted</title>";
}
?>
</head>
<body>
<?php
echo "<form id='form_id' method='post' name='myform'>";
echo "<input name='val1' id='val1' type='text' value='7'>";
echo "<input id='submit' type='submit' value='submit'>";
echo "</form>";
?>
</body>
</html>
我有以下代码:
index.php
<?php
if (isset($_POST['post'])) {
echo "<script>alert(".$_POST['val1'].")</script>";
}
?>
<html>
...
<body>
...
<?php
echo "<form id='form_id' method='post' name='myform'>";
echo "<input id='val1' type='text' value='7'>";
echo "<input id='submit' type='submit' value='submit'>";
echo "</form>";
?>
...
<body>
</html>
这将创建一个表单、一个文本字段和一个提交按钮。除了不提交表格外,所有这些都显示得很好。所以我的问题是为什么我的表格在这里不起作用,我应该怎么做才能解决这个问题而不将其从 php.
移出问题是您缺少元素的 name
属性:
<?php
if (isset($_POST['post'])) {
echo "<script>alert(".$_POST['val1'].")</script>";
}
?>
<html>
...
<body>
...
<?php
echo "<form id='form_id' method='post' name='myform'>";
echo "<input id='val1' name='val1' type='text' value='7'>";
echo "<input id='submit' name='post' type='submit' value='submit'>";
echo "</form>";
?>
...
<body>
</html>
您可以注意到为文本字段和提交按钮添加了 name
属性。仅 name
属性将用于在发布表单时标识字段。
除了 Thamilan 关于 name 属性的回答之外,您还应该使用 empty($POST['val1']) 而不是 isset. 这是一个完整的工作示例:
<!DOCTYPE html>
<head>
<?php
if (empty($_POST['val1']))
print "<title>Not yet submitted</title>";
else
{
echo "<script>alert(".$_POST['val1'].")</script>";
echo "<title>Submitted</title>";
}
?>
</head>
<body>
<?php
echo "<form id='form_id' method='post' name='myform'>";
echo "<input name='val1' id='val1' type='text' value='7'>";
echo "<input id='submit' type='submit' value='submit'>";
echo "</form>";
?>
</body>
</html>