繁体   English   中英

isset条件在PHP中不起作用

[英]isset condition not working in php

我试图使用echo来打印一些文本,起初我以为错误是来自echo函数的语法,然后我发现即使将按钮设置为,isset条件也无法得到验证!

<?php
if (isset($_POST['ajout'])) {
    echo "string";
} else {
    echo "vérifier les champs";
}
?>
<!DOCTYPE html>
<html>
    <head>
        <title></title>
    </head>
    <body>
        <form>
            <label>id</label>
            <input type="text" name="id">
            <br>
            <label>points</label>
            <input type="text" name="points">
            <br>
            <input type="submit" name="ajout">
        </form>

    </body>
</html>

您应该指定表单的方法。

<form method="post">

根据w3c ,默认方法是GET。

方法=获取|发布

此属性指定将使用哪种HTTP方法提交表单数据集。 可能的(不区分大小写)值是“ get”(默认)和“ post”。 有关用法信息,请参阅表单提交部分。

试试这个

您必须使用表单方法来get数据并将其postphp

就像<form method="post">

<?php
if (isset($_POST['ajout'])) {
    echo "string";
}
else{
    echo "vérifier les champs";
}
?>
<!DOCTYPE html>
<html>
    <head>
        <title>
        </title>
    </head>
    <body>
        <form method="post">
            <label>id</label>
            <input type="text" name="id">
            <br>
            <label>points</label>
            <input type="text" name="points">
            <br>
            <input type="submit" name="ajout">
        </form>
    </body>
</html>

这里唯一的$_POST变量是'name &&'id',您要检查是否设置了提交按钮?

您还缺少表单方法,在这种情况下,该方法应为“ post”

<form method="post">

编辑:

通常更接受使用<button type="submit">而不是<input type="submit">

尽管两个元素在功能上都提供相同的结果,但我强烈建议您使用<button>

  • 更加明确和可读。 input表明该控件是可编辑的 ,或者可以由用户编辑; button作用要明确得多
  • 在CSS中更容易样式化; 如上所述,FIrefox和IE的古怪之处在于在某些情况下input[type="submit"]无法正确显示
  • 可预测的请求:当在POST / GET请求中将值提交到服务器时,IE会表现出异常的行为
  • 标记友好; 您可以在按钮内嵌套项目,例如图标。
  • HTML5,具有前瞻性; 作为开发人员,我们有责任在新规范正式采用后采用新规范。 到目前为止,HTML5已经正式发布了一年多,并且在许多情况下已经显示出可以增强SEO的功能

总而言之, 我强烈不建议使用<input type="submit" />

来源: 输入类型提交与按钮类型提交

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM