我测试了isset与postPHP的功能.我想要做的是每当我点击"添加"按钮时,它都会回显"你好".但是当我点击按钮时没有任何反应.我意识到这 if (isset($_POST['FORM']))是在检查表格是否有$_post东西,所以它应该回应"你好"吗?但它没有按预期工作.
<?php
if (isset($_POST['FORM'])){
echo "HELLO";
}
?>
<html>
<body>
<form method="post" name="FORM">
Book Id: <input type="text" name='bookid' /><br/><br/>
Book Name: <input type="text" name='bookname' /><br/><br/>
Borrow Date: <input type="text" name='borrowdate' /><br/><br/>
Return Date: <input type="text" name='returndate' /><br/><br/>
<input type="submit" value="ADD"><br/><br/>
</form>
</body>
Run Code Online (Sandbox Code Playgroud)
<form> 不使用name属性,所以你现在拥有的不起作用.
您需要使用输入中的名称属性,以便回显您要作为值传递的内容.
从POST数组中分配变量时,删除name属性<form method="post" name="FORM">并将其更改if (isset($_POST['FORM']))为POST数组.
请参阅php.net上有关处理表单的手册.
以下是一个例子:
HTML:
<form action="action.php" method="post">
<p>Your name: <input type="text" name="name" /></p>
<p>Your age: <input type="text" name="age" /></p>
<p><input type="submit" /></p>
</form>
Run Code Online (Sandbox Code Playgroud)
PHP:
Hi <?php echo htmlspecialchars($_POST['name']); ?>.
You are <?php echo (int)$_POST['age']; ?> years old.
Run Code Online (Sandbox Code Playgroud)
使用isset()/时empty().
哪里empty()最适合数据输入和isset()一个提交按钮,也需要命名并将所有内容包装isset()在那个条件语句中然后检查空输入.