📜  如何创建一个提交给 self 的PHP表单?

📅  最后修改于: 2021-11-08 06:32:28             🧑  作者: Mango

可以使用PHP将表单提交到网页本身。向 self 提交表单的主要目的是进行数据验证。数据验证意味着检查要在表单字段中输入的所需数据。

PHP_SELF是一个变量,它返回当前正在执行的脚本。您可以在表单的操作字段中使用此变量。当用户按下提交按钮时,表单的操作字段指示在哪里提交表单数据。大多数PHP页面在与表单本身相同的页面上维护数据验证。
这样做的一个好处是在网站结构发生变化的情况下,表单的数据验证代码和表单保持在一起。

代码片段:

解释:

  • $_SERVER[‘PHP_SELF’]: $_SERVER[“PHP_SELF”]是一个超级全局变量,它返回当前正在执行的脚本的文件名。它将提交的表单数据发送到同一页面,而不是跳转到不同的页面。
  • htmlspecialcharacters(): htmlspecialchars()函数将特殊字符转换为 HTML 实体。它将用 < 和 > 替换 HTML字符。这可以防止攻击者通过在表单字段中插入 HTML 或 Javascript 代码来利用代码进行脚本攻击。

注意: $_SERVER[‘PHP_SELF’] 可以很容易地被黑客利用跨站脚本通过在 URL 中插入一个“/”然后一个易受攻击的脚本来利用,但是htmlspecialcharacters()是解决方案,它将 HTML字符从网站变成无害的冗余代码。

下面的例子说明了上述方法:

例子:



  


  

    
  
        

PHP Form Example: GFG Review

        ">             Name:                          
            
              E-mail:                          
            
            Review For GFG:                          
            
              Satisfaction Level:             Bad             Average             Good             
            
                                 Your Input:";             echo $name;             echo "
";             echo $email;             echo "
";             echo $review;             echo "
";             echo $level;         ?>   

输出:

  • 提交前:
  • 提交后:

您还可以插入函数来检查根据要求输入的值并相应地显示验证。提交给自己的PHP表单在数据验证和数据库输入格式方面有很多应用。