用PHP更新数据库

时间:2015-07-27 07:51:27

标签: php mysql sql-update

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "dhandhar";
$conn = new mysqli($servername, $username, $password, $dbname);

?>
<?php
$id=$_GET['id'];

$name=$_POST['name']; 
$fathers_name=$_POST['fathers_name'];
$gotra=$_POST['gotra'];
$image=$_POST['image'];
$village=$_POST['village'];
$company_name=$_POST['company_name'];
$address1=$_POST['address1'];
$address2=$_POST['address2'];
$city=$_POST['city'];
$pincode=$_POST['pincode'];
$mobile1=$_POST['mobile1'];
$mobile2=$_POST['mobile2'];
$village_number=$_POST['village_number'];

if($_POST['edit2'])
{
$sql = "UPDATE members_data SET name='$name', fathers_name='$fathers_name', gotra='$gotra', image='$image', village=$village', company_name='$company_name', address1='$address1', address2='$address2', city='$city', pincode='$pincode', mobile1='$mobile1', mobile2='$mobile2', village_number='$village_number' )VALUES('$name', '$fathers_name', '$gotra', '$image', '$village', '$company_name', '$address1', '$address2', '$city', '$pincode', '$mobile1', '$mobile2', '$village_number' WHERE id= '".$id."'";
if (mysqli_query($conn, $sql)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}


$sql = "DELETE FROM edit_members_data WHERE id= '".$id."'";

if ($conn->query($sql) === TRUE) {
echo "Record deleted successfully";
} else {
echo "Error deleting record: " . $conn->error;
$conn->close();
}
}
?>
<script type="text/javascript">window.location="admin_approve.php"</script>

我收到以下错误:

  

错误:UPDATE members_data SET name =&#39;名称测试&#39;,fathers_name =&#39;测试   姓名&#39;,gotra =&#39; NA&#39;,image =&#39; award3.jpg&#39;,village = NA&#39;,   company_name =&#39; test_company&#39;,address1 =&#39;测试地址&#39;,地址2 =&#39;&#39;,   city =&#39; test City&#39;,pincode =&#39; test pincode&#39;,mobile1 =&#39; 000&#39;,   mobile2 =&#39; 000&#39;,village_number =&#39;&#39; )VALUES(&#39;名称测试&#39;,&#39;测试名称&#39;,   &#39; NA&#39;,&#39; award3.jpg&#39;,&#39; NA&#39;,&#39; test_company&#39;,&#39;测试地址&#39;,&# 39;&#39;,&#39;测试   城市&#39;,&#39;测试密码&#39;,&#39; 000&#39;,&#39; 000&#39;,&#39;&#39;在哪里id =&#39; 2&#39;       您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以获得正确的语法   在&#39;&#39;,company_name =&#39; test_company&#39;,地址1 =&#39;测试地址&#39;,   address2 =&#39;&#39;,city =&#39; test&#39;在第1行记录删除成功

3 个答案:

答案 0 :(得分:2)

缺少一条报价:village=$village'必须为village='$village'

此外,您应该使用预准备语句来阻止sql注入,并使查询更具可读性。

答案 1 :(得分:0)

请更新您的代码

WHERE id =&#39;&#34;。$ id。&#34;&#39;&#34;;

答案 2 :(得分:0)

您在更新查询中不需要VALUES('$name', '$fathers_name', '$gotra', '$image', '$village', '$company_name', '$address1', '$address2', '$city', '$pincod'

缺少village=$village'

更改

$sql = "UPDATE members_data SET name='$name', fathers_name='$fathers_name', gotra='$gotra', image='$image', village=$village', company_name='$company_name', address1='$address1', address2='$address2', city='$city', pincode='$pincode', mobile1='$mobile1', mobile2='$mobile2', village_number='$village_number' )VALUES('$name', '$fathers_name', '$gotra', '$image', '$village', '$company_name', '$address1', '$address2', '$city', '$pincode', '$mobile1', '$mobile2', '$village_number' WHERE id= '".$id."'";

$sql = "UPDATE members_data SET name='$name', fathers_name='$fathers_name', gotra='$gotra', image='$image', village='$village', company_name='$company_name', address1='$address1', address2='$address2', city='$city', pincode='$pincode', mobile1='$mobile1', mobile2='$mobile2', village_number='$village_number' ) WHERE id= '$id' ";