来自PHP的Mysql Insert语句

时间:2013-11-21 10:09:44

标签: php mysql insert

我正在尝试运行PHP可以将值插入MySQL表。

我的数据库连接正常。

我在函数中有代码:

function InsertRighmoveID($RightmoveID)
{
    # Connection already created in main program

    #Define the query to insert righmove ID already in Database
    #VALUES ('" . substr($name, 23, 31) . "')";

    echo "In InsertRighmoveID() function </br>";
        $query_enter_rightmove_ID = 

        "INSERT INTO tblRightMoveIDs (rightmoveID)
        VALUES ('" . $RightmoveID . "');";

        #Echo the query to check it

        echo $query_enter_rightmove_ID . "</br>";

        #Execute the query
        $query_enter_rightmove_ID = mysql_query($query_enter_rightmove_ID);
        echo "Leaving InsertRighmoveID() function </br>";

        #Execute the query
        $query_enter_rightmove_ID = mysql_query($query_enter_rightmove_ID);

        #Check to see if the query worked   
        if (!$query_enter_rightmove_ID) 
            {
                die("Database query failed:" . mysql_error());
            }
        echo "Leaving InsertRighmoveID() function </br>";
}

当我在网页中运行代码时,让它将查询打印到屏幕上这是消息:

INSERT INTO tblRightMoveIDs (rightmoveID) VALUES ('44047607')

数据库查询失败:

  

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第1行的“1”附近使用正确的语法

44047607是传递给函数的值。

如果我运行:

INSERT INTO tblRightMoveIDs (rightmoveID) VALUES ('44047607'); 

在程序之外它可以工作。

2 个答案:

答案 0 :(得分:1)

从此处删除分号 ;

 "INSERT INTO tblRightMoveIDs (rightmoveID)
    VALUES ('" . $RightmoveID . "');";
                            -------^

答案 1 :(得分:0)

已加星标的部分出现错误:

**$query_enter_rightmove_ID** = mysql_query($query_enter_rightmove_ID);
echo "Leaving InsertRighmoveID() function </br>";
#Execute the query
$query_enter_rightmove_ID = mysql_query(**$query_enter_rightmove_ID**);

您正在使用正确的查询首次执行mysql_query,并将结果放入$ query_enter_rightmove_ID变量中。第二次,您使用第一个查询的结果作为mysql_query的参数,这是错误的