插入语句不适用于PHP

时间:2013-05-11 10:07:15

标签: php sql-server-2008

我是PHP的新手,我正在尝试使用下面的脚本将一条记录插入到MSSQL表中,并使用HTML表单输入Firstname, lastname and age,但它无效。有什么想法吗?

下面使用的脚本:

PHP Code
<?php
//mysqli_connect(host,username,password,dbname); 
 $con=mssql_connect("localhost","sa","10Basana$","my_db");
 // Check connection
 if (mssql_error())
   {
   echo "Failed to connect to MySQL: " . mssql_error();
   }

$sql="INSERT INTO Persons (FirstName, LastName, Age)
 VALUES
 ('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";

if (!mssql_error($con,$sql))
   {
   die('Error: ' . mssql_error($con));
   }
 echo "1 record added";

mssql_close($con);
 ?>  

3 个答案:

答案 0 :(得分:1)

执行sql查询变量。 $sql

你需要执行

mssql_query($sql)

否则它不会被触发。

也请不要使用php的原生mssql驱动程序,因为它不再维护。请更喜欢准备好的陈述。

答案 1 :(得分:0)

您忘记使用mssql_query执行查询:

mssql_query($sql);

答案 2 :(得分:0)

现在mssql_error()这个函数在php中不起作用。所以试试这段代码。

<?php   
$con = mssql_connect("localhost","sa","10Basana$","my_db");
// Check connection

if (!$con) 
{
  die('Not connected : ' . mssql_get_last_message());
} 

$sql="INSERT INTO Persons (FirstName, LastName, Age) VALUES ('".$_POST[firstname]."','".$_POST[lastname]."','".$_POST[age]."')";

$mydata = mssql_query($sql);

if (!$mydata)
{
  die('MSSQL error: ' . mssql_get_last_message());
}

echo "1 record added";

mssql_close($con);
?>