$ _POST不适用于我的表单

时间:2017-09-02 19:53:38

标签: php

现在我制作了一个简单的表格,其中2个输入用于名称,1个用于按钮 我想在php文件中回显姓名输入

<form action="del.php">                                     
<input type="text"  name="name" />
<input type="submit" name="btn" value="button"/>
</form>
  

在del.php中

<?php
session_start();
$_SESSION['name'] = $_POST['name'];
echo "".$_POST['name'].""; 
每次都给我白屏 我想回应在这个输入中输入的任何东西

3 个答案:

答案 0 :(得分:4)

您的表单中缺少method属性。

<form action="del.php" method="POST">                                     
    <input type="text"  name="name" />
    <input type="submit" name="btn" value="button"/>
</form>
  

method属性指定如何发送表单数据(表单数据发送到action属性中指定的页面)。

     

表单数据可以作为网址变量发送(使用方法=&#34;获取&#34; )或作为HTTP发布交易(使用方法=&#34;发布& #34;

来源:https://www.w3schools.com/tags/att_form_method.asp

答案 1 :(得分:1)

default method提交表单时GET,您需要在POST中指定<form>方法(method =&#34; post&#34;) } tag:

<form action="del.php" method="post"> 

答案 2 :(得分:0)

您的表单没有POST它的GETing(请参阅将设置的{url params example.com?name=)这是因为您没有为POST设置from方法:

<form action="del.php" method="post">                                     
    <input type="text"  name="name" />
    <input type="submit" name="btn" value="button"/>
</form>

在您的PHP中,您应检查其帖子并检查值是否已设置:

<?php 
session_start();

if ($_SERVER['REQUEST_METHOD'] == 'POST') {

    $name = isset($_POST['name']) ? $_POST['name'] : null;

    // set your session - not sure you need this :/
    $_SESSION['name'] = $name;

    // echo out your result but also protect from XSS by using htmlentities
    echo htmlentities($name); 
}