插入DB php

时间:2014-01-03 10:42:48

标签: php mysql

我正在尝试在数据库中插入数据。这是我使用 echo 打印的查询

INSERT INTO tablename(NameOfVisitor, Email, Country,City,ReferenceID,Cell#)VALUES('myname', 'myemail@yahoo.com', 'Pakistan','Lahore','refid',03001234567)

这是我在php代码中的查询

$sql="INSERT INTO $tbl_name(NameOfVisitor, Email, Country,City,ReferenceID,Cell#)VALUES('$name', '$email', '$country','$city','$refId',$cellNo)";  
                        echo "<br>";
                        echo "<br>";
                        echo $sql;
                        echo "<br>";
                        echo "<br>";
                                $retval = mysql_query( $sql, $conn );
                                if(! $retval )
                                {
                                  die('Could not enter data: ' . mysql_error());
                                }
                                echo "Entered data successfully\n";
                                mysql_close($conn);

当我跑步时,它会给我以下错误。

  

无法输入数据:SQL语法中有错误;检查   手册,对应右边的MySQL服务器版本   在'第1行'附近使用的语法

查询对我来说是正确的。谢谢。

4 个答案:

答案 0 :(得分:5)

从查询中删除#

INSERT INTO tablename(NameOfVisitor, Email, Country,City,ReferenceID,Cell#)
                                                                         ^ 

答案 1 :(得分:0)

#mark用于在SQL中进行注释,因此在您的查询中#之后的所有内容都成为注释(至少在特定行中)

删除#会进行更正。

$sql="INSERT INTO $tbl_name(NameOfVisitor, Email, Country,City,ReferenceID,Cell)VALUES('$name', '$email', '$country','$city','$refId',$cellNo)";  
                        echo "<br>";
                        echo "<br>";
                        echo $sql;
                        echo "<br>";
                        echo "<br>";

答案 2 :(得分:0)

如果列的名称是Cell#,那么您必须引用它,以便#不被视为评论的开头:

INSERT INTO tablename(NameOfVisitor, Email, Country,City,ReferenceID,`Cell#`)VALUES('myname', 'myemail@yahoo.com', 'Pakistan','Lahore','refid',03001234567)

答案 3 :(得分:0)

在Cell#之前和之后使用`,如下面的查询

所示
INSERT INTO tablename (
  NameOfVisitor, Email, Country,City,ReferenceID,`Cell#`) 
VALUES (
  'myname', 'myemail@yahoo.com', 'Pakistan','Lahore','refid',03001234567)

所以你的php代码应该如下

$sql="INSERT INTO $tbl_name(NameOfVisitor, Email, Country, City, ReferenceID, `Cell#`) VALUES('$name', '$email', '$country', '$city', '$refId', $cellNo)";  
echo "<br>";
echo "<br>";
echo $sql;
echo "<br>";
echo "<br>";
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
    echo "Could not enter data: " . mysql_error();
}
echo "Entered data successfully\n";
mysql_close($conn);