提交表单到行动php文件

unk*_*SPY 1 html php forms

我有一个表单,当用户点击提交时,我需要一个php文件来运行.下面是表单和php文件.

<form action="php_scripts/test.php" method="POST">
        <input name="feature"     type = "text"     placeholder="Feature"   /> 
        <input name="feature2"   type = "text"  placeholder="Feature2"  /> 
        <input type="submit" value = "submit"/>
</form>
Run Code Online (Sandbox Code Playgroud)

test.php的

<?php

    if( isset($_GET['submit']) )
    {
        $feature = $_POST['feature'];
        // do stuff (will send data to database)
    }
?>
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是,当我在表格上按提交时,

if( isset($_GET['submit']) )
Run Code Online (Sandbox Code Playgroud)

始终返回false.

谁能解释为什么会这样?我是否完全误解了如何实现向php脚本发送数据的表单?

如果我犯了任何语法错误而感到抱歉,非常感谢您提供任何帮助.

Fun*_*ner 5

您的代码存在一些问题.

你正在将GET与POST方法混合使用.另外,为您的输入添加值并且您的提交按钮未命名,您尝试将其用作条件语句.

HTML

<form action="php_scripts/test.php" method="POST">
        <input name="feature"  value="feature" type = "text" placeholder="Feature" /> 
        <input name="feature2" value="feature2" type = "text"  placeholder="Feature2"  /> 
        <input type="submit" name="submit" value = "submit"/>
</form>
Run Code Online (Sandbox Code Playgroud)

PHP

<?php

    if( isset($_POST['submit']) )
    {
        $feature = $_POST['feature'];
        $feature2 = $_POST['feature2'];
        // do stuff (will send data to database)
    }
?>
Run Code Online (Sandbox Code Playgroud)

旁注:你可以/也应该检查空值.

if(isset($_POST['submit']) 
    && !empty($_POST['feature']) 
    && !empty($_POST['feature2']) ) {...}
Run Code Online (Sandbox Code Playgroud)

脚注:

看到您打算发送到DB:

我希望您计划使用mysqli准备好的语句,或PDO使用预先准备好的语句.