尝试将php中的信息更新为mysql db时出现语法错误

时间:2014-12-14 01:09:52

标签: php mysql

尝试更新网页上的标题时收到此错误'您的SQL语法出错;检查与您的MySQL服务器版本相对应的手册,以便在'index SET h1 ='附近使用正确的语法。欢迎来到乐施会,英国领先的慈善机构,以消除贫困。''在第1行

这是我的代码,并提前感谢我确定它的东西很傻!!

<?php
include('../connect.php');
session_start();
if(!isset($_SESSION['csc2024_40104547']))
{
header("Location: login.php");
}
$id = $_POST['id'];  
$updateh1 = $_POST['h1'];
$updatep1 = $_POST['p1'];
$updatep2 = $_POST['p2'];
$updateimg1 = $_POST['img1'];
$updateh2 = $_POST['h2'];
$updatep3 = $_POST['p3'];
$updateli1 = $_POST['li1'];
$updateli2 = $_POST['li2'];

$query = "UPDATE index SET h1='$updateh1',  p1='$updatep1',p2='$updatep2',
    h2='$updateh2',p3='$updatep3',li1='$updateli1',li2='$updateli2',
    img1='$    updateimg1' WHERE id='$id'";
$display = mysql_query($query) or die(mysql_error());
?>

2 个答案:

答案 0 :(得分:3)

index是MySQL中的保留关键字。你需要像这样逃避它

update `index` set h1='$updateh1', ...

注意使用回拨号而非报价。

但你真的不应该把它作为一个表名开始使用。

答案 1 :(得分:0)

试试这个:

$query = "UPDATE `index` SET `h1` = '$updateh1',`p1` = 'updatep1' WHERE `id`='$id'";    

index 是MySQL中的保留关键字。