Php简单插入表单数据到数据库不工作

问题描述:

我是PHP新手。 我试图将表单数据插入到本地数据库的SQL数据。 我总是收到失败的错误。Php简单插入表单数据到数据库不工作

这里我是我的两个相同的文件。 请指导我解决相同的查询。

<?php 

$mysql_hostname = "localhost"; 
$mysql_user = "root"; 
$mysql_password = ""; 
$mysql_database = "my_db"; 

$bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Opps some thing went wrong"); 
mysql_select_db($mysql_database, $bd) or die("Opps some thing went wrong"); 


$sql_insert = "INSERT INTO company ('company_no','name', 'address', 'model','fabno', 'startdate', 'enddate', 
       'InvoiceDate', 'contatctPerson','phoneNumber', 'mailId', 'ccsNO', 'ElgiRegion', 'kmreading') 
    VALUES (NULL,'$_POST[compnay_name]','$_POST[address]','$_POST[fabno]','$_POST[startdate]','$_POST[enddate]', 
     '$_POST[InvoiceDate]','$_POST[contatctPerson]','$_POST[phoneNumber]', 
      '$_POST[mailId]','$_POST[ccsNO]','$_POST[ElgiRegion]','$_POST[kmreading]')"; 

echo "$sql_insert"; 

$result = mysql_query($sql_insert,$bd); 

if ($result) { 
    echo("<br>Input data is succeed"); 
} else { 
    echo("<br>Input data is fail"); 
} 

mysql_close($bd); 

?> 

我在这里总是输入数据失败。

+0

mysql_error()为您提供MySQL报告的最后一个错误。将echo(“
输入数据失败”)更改为'echo mysql_error()'并告诉我们它给了你什么。 –

+0

'mysql_'函数已经过时。请使用[PDO](http://us1.php.net/manual/en/ref.pdo-mysql.php)或[mysqli](http://us1.php.net/manual/en/book.mysqli .PHP)。此外,你不应该使用字符串互操作,以建立从POST数据的SQL查询,因为它的[SQL注入](http://*.com/questions/60174/how-can-i-prevent-sql-injection-创造潜力in-php) – Dan

+0

我真的不同意你的决定。如果有问题的话,开发人员可以在栈式流程中找到答案。 我不认为这个政策只关闭问题,因为对此的理解较少。 我已经提到我是PHP新手。让我们有关android和嵌入式的问题。与其他人相比,我会保持很长时间。 我坚信人们应该看看我的评论。 – NovusMobile

首先,你还没有逃过你的任何数据。如果我是张贴到您的形式“让我们党”您的SQL休息,因为我撇号,使您的SQL看起来像

VALUES(NULL, 'Let's have a party') 

您可以通过mysql_real_escape_string通过你的数据解决这个(我只显示一个片段例如)

$sql = "VALUES (NULL,'" . mysql_real_escape_string($_POST['company_name']) . "')"; 

,让您的SQL看起来像这样

VALUES(NULL, 'Let\'s have a party') 

这使我想起我的最后一点。如果你点击上面我的链接,你看到的大,可怕的红色块你mysql_折旧,可能与PHP的未来版本中删除警告。尝试使用mysqli

+0

感谢Mchavity的帮助。 – NovusMobile

看起来你的查询中有很多拼写错误。例如'contatctPerson'。我猜这应该是“contactPerson”。如果您使用的表格没有与字段名称相同的拼写错误,则这些错别字将导致错误。我会建议一个接一个地逐字,并校对所有值的拼写。