带有IF语句的PHP简单表单

时间:2014-02-10 03:12:33

标签: php

我是PHP的新手,目前正致力于开发我的第一个表单。使用下面的代码示例,我试图实现两件事。

  1. 如果表格中填写了“姓名”或“电子邮件”的字段,则会发布“您的姓名是:”名称“和”您的电子邮件是:“电子邮件”。
  2. 如果没有填写字段,则根本不显示任何字段。
  3. 我认为这需要使用IF语句来完成,但是如果字段为空,我很难找到显示协议的任何内容。任何帮助将不胜感激。

    <form action="Test.php" method="post">
        Name: <input type="text" name="name"><br>
        E-mail: <input type="text" name="email"><br>
        <input type="submit">
    </form>
    
    <?php 
    
    $name = $_POST["name"];
    if($name="name") {
        echo "Your name is: $_POST["name"]" ;
    } else {
        echo "";
    }
    ?>
    <br>
    
    <?php 
    $email = $_POST["email"];
    if($email = "email") {
        echo "Your email is: $_POST["email"]" ;
    } else {
        echo "";
    }
    ?>
    

3 个答案:

答案 0 :(得分:1)

您的条件陈述不正确。

当您使用=检查某些内容是否“等于”时,您目前正在使用($name="name")($email = "email")==进行作业。

此外,由于Marc B stated in his comment “您不能在"引用的字符串中使用"引号,也不允许在"内使用引用的数组键{1}}引用字符串...“

然而,如果你要保持这种策略;即:if($name=="name")那么只有在表单的输入中输入nameemail这些单词时,您的表单才有效。

有几种方法可以实现此目的,使用if(!empty检查某个字段是否为空(或者是否设置为if(isset

在这种情况下,我使用if(!empty。这意味着,如果字段不为空,则在之后回显结果。

这是一个基本的例子:(还有其他方法可以达到相同的效果)

<form action="Test.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

<?php
$name = $_POST['name'];
if(!empty($_POST['name'])) {
    echo "Your name is: " . $name;
} else {
    echo "";
}
?>
<br>

<?php 
$email = $_POST['email'];
if(!empty($_POST['email'])) {
    echo "Your email is: " . $email;
} else {
    echo "";
}
?>

答案 1 :(得分:0)

这就是你需要写的所有内容:

<html>
<body>

<form action="Test.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

<?php

if(!empty($_POST['name']))
    echo "Your name is {$_POST['name']}. <br />";


if(!empty($_POST['email']))
    echo "Your email is {$_POST['email']}. <br />";

?>

</body>
</html>

P.S。:我真的建议你阅读一本介绍性的书,至少要涵盖基本的功能。之后,您可以直接访问php.net并根据需要查找功能。

答案 2 :(得分:0)

您可以使用isset()检查变量是否实际设置。您还可以使用empty()检查它是否存在以及是否存储了值。例如:

if (!empty($_POST['email')) {
    // do things
}