表单$ _post,不显示空白信息

时间:2014-07-14 19:25:49

标签: php html forms post

我试图制作一个表单页面,一个确认页面和一个添加到数据库页面,我在前两页中遇到了问题。

form.php的

<html>
   <body>

<form action="ask.php" method="post">
name 1: <input type="text" name="name1"><br>
name 2: <input type="text" name="name2"><br>
name 3: <input type="text" name="name3"><br>
<input type="submit">
</form>

 </body>
</html> 

基本上它要求3个名字,并传递给ask.php,但如果用户没有填写所有输入,问题就会开始。如果用户只填写2个名称,则显示name3为(空白)。 我不知道它显示与name3相关的任何内容是名称3未填充

这是ask.php的代码

<html>
 <body>

 name 1 is <?php echo $_POST["name1"]; ?><br>
 name 2 is <?php echo $_POST["name2"]; ?><br>
 name 3 is <?php echo $_POST["name3"]; ?><br>

 </body>
 </html> 

如何仅显示填充的信息?如果表单有更多的输入,那么问题甚至会更加突出

3 个答案:

答案 0 :(得分:1)

你可以使用

if (!empty($_POST["name1"])) echo "name 1 is...

检查名为“name1”的POST请求值是否为空,然后继续输出。

答案 1 :(得分:0)

<html>
 <body>

 name 1 is <?php echo $_POST["name1"]; ?><br>
 name 2 is <?php echo $_POST["name2"]; ?><br>
 <?php if ($_POST['name3'] != ""): echo "name 3 is" . $_POST["name3"]; ?><br>

 </body>
 </html> 

如果输入中插入了某些内容,则只显示name3。如果它是一个空格或一个角色,或者无论如何都会显示它。

答案 2 :(得分:0)

为什么不在表单中放置一些验证来避免用户在表单中保留空输入字段?使用required标记的input属性。

使用如下:

<html>
   <body>

<form action="ask.php" method="post">
name 1: <input type="text" name="name1" required><br>
name 2: <input type="text" name="name2" required><br>
name 3: <input type="text" name="name3" required><br>
<input type="submit">
</form>

 </body>
</html> 

required指定在提交表单之前必须填写输入字段。

more info about required proerty

希望这会有所帮助。