Php $\无法创建记录的POST表单

Php $\无法创建记录的POST表单,php,mysql,forms,Php,Mysql,Forms,我正在处理一个简单的PHP表单,我遇到了一个有点奇怪的问题。它发生在我的本地MAMP环境和我的托管网站上。此脚本的目的是基于通过以下表单提交的数据将记录存储到表中 <?php include("dbconnect.php"); if(isset($_POST['submit']){ $firstName = $_POST['firstName']; $SQLString = "INSERT INTO name_table (first_nam

我正在处理一个简单的PHP表单,我遇到了一个有点奇怪的问题。它发生在我的本地MAMP环境和我的托管网站上。此脚本的目的是基于通过以下表单提交的数据将记录存储到表中

<?php
    include("dbconnect.php");
    if(isset($_POST['submit']){
        $firstName = $_POST['firstName'];
        $SQLString = "INSERT INTO name_table (first_name) VALUES($firstName)";
        mysql_query($SQLString);
    } else {
        //Debugging script
        $mypostdata = file("php://input");
        print "<pre>"; 
        var_dump($_POST);
        var_dump($mypostdata);
        print "</pre>";
    }
?>

<form name="myForm" action="<?php $_SERVER['PHP_SELF']?>" method="POST">
    <label for="firstName">First Name:</label>
    <input type="text" name="firstName" value="Bob" />
    <input type="submit" name="submit" value="Finish">
</form>
var_dump on
$mypostdata=文件(“php://input");结果如下:

"INSERT INTO name_table (first_name) VALUES('$firstName')";
提交表单时,表中没有创建任何记录

编辑: 为了清楚起见,我最初认为错误在于
$\u POST['myForm']
名称出现为
NULL
,但注释和答案已经澄清了这一点。


表单本身未被列为“成功控制”(请参见17.2.1),因此不应提交其名称。

如果first\u name是一个varchar,则需要在MySQL查询中将其包装为单引号。例如:

改变 $SQLString=“插入到name_表(first_name)值($firstName)”;到 $SQLString=“插入到name_表(first_name)值(“.$firstName.”)中”

如果不起作用,则通过写入错误报告(E_ALL)显示页面错误;和ini_集合(“显示错误”,1)


继续发布结果

谁说应该发布?请详细说明有用的信息。我是认真的。你为什么希望表单的名称被发布?啊,谢谢,我编辑了这篇文章以便更准确一点,因为我知道我错误地认为$\u post name的值不是NULL。未创建记录的问题仍然存在。php文档:
isset
-确定是否设置了变量且该变量不为NULL。
array(9){
    "name=Bob&submit=Finish"
}
"INSERT INTO name_table (first_name) VALUES('$firstName')";