PHP和MySQL在数据库中删除字段时不应';T

PHP和MySQL在数据库中删除字段时不应';T,php,mysql,insert,Php,Mysql,Insert,我使用了一个简单的HTML表单和两个提交按钮。每个按钮都执行一个PHP函数,将数据插入数据库中的特定字段。第一个提交按钮执行的PHP函数包含以下mysql代码: $placeA = "".$_SESSION['username'].""; $connect = mysql_connect("localhost", "root", "root") or die("Couldn't connect!"); mysql_select_db("login") or die("Co

我使用了一个简单的HTML表单和两个提交按钮。每个按钮都执行一个PHP函数,将数据插入数据库中的特定字段。第一个提交按钮执行的PHP函数包含以下mysql代码:

    $placeA = "".$_SESSION['username']."";
    $connect = mysql_connect("localhost", "root", "root") or die("Couldn't connect!");
    mysql_select_db("login") or die("Couldn't find db");

    $queryreg = mysql_query("
    INSERT INTO places VALUES ('$placeA', '$placeB')
    ");
    $placeB = "".$_SESSION['username']."";
    $connect = mysql_connect("localhost", "root", "root") or die("Couldn't connect!");
    mysql_select_db("login") or die("Couldn't find db");

    $queryreg = mysql_query("
    INSERT INTO places VALUES ('$placeA', '$placeB')
    ");
第二个按钮执行一个非常类似的PHP函数,其中包含以下mysql代码:

    $placeA = "".$_SESSION['username']."";
    $connect = mysql_connect("localhost", "root", "root") or die("Couldn't connect!");
    mysql_select_db("login") or die("Couldn't find db");

    $queryreg = mysql_query("
    INSERT INTO places VALUES ('$placeA', '$placeB')
    ");
    $placeB = "".$_SESSION['username']."";
    $connect = mysql_connect("localhost", "root", "root") or die("Couldn't connect!");
    mysql_select_db("login") or die("Couldn't find db");

    $queryreg = mysql_query("
    INSERT INTO places VALUES ('$placeA', '$placeB')
    ");

当我按下第一个按钮时,它会做它应该做的事情。它指定$placeA作为用户名,然后将$placeA添加到数据库中“places”表的第一列。当我点击第二个按钮时,我的问题出现了。第二个函数将用户名插入到“places”表第二列下的数据库中,就像它应该的那样,但它也会删除已经插入到第一列中的用户名。如果我再次单击第一个按钮,它会将用户名插入第一列,并从第二列中删除用户名。他们似乎出于某种原因相互排斥?我该怎么办?(其他代码都与数据库无关。它只是一堆回音。)

使用session定义$placeA和$placeB变量,如果您不每次都定义返回的每个变量并将其清空,如果您的structure在字段(placeA或placeB)中接受NULL,则结果将是一条奇怪的记录


IMHO,开始使用“更多扩展查询”插入(字段1、字段2、…)值('val1',val2等)。调试时会更清楚。

我认为您可能对数据库表的概念有很大的误解。INSERT语句将新行插入表中的位置。我假设变量
$placeA
未在您的第二个脚本中设置,因此它将添加第一列为空的行。您可以发布def吗初始化login.places表?除此之外,如果您在生产机器上,使用根帐户访问数据库是非常糟糕的。更不用说SQL注入了。