[英]Update mysql database with php
我想更新我的数据库,并且此代码可以在另一个表上正常工作,但是在这里我有一个错误,并且看到以下消息:
您的SQL语法有误; 检查与您的MySQL服务器版本相对应的手册,以在第4行的'WHERE
id
='588'附近使用正确的语法
<?php
$sel_item = "SELECT * FROM `employees` where id=".$_GET['emp_id'];
$done_item = mysql_query($sel_item);
$get_item = mysql_fetch_array($done_item);
if(isset($_POST['edit']) ){
$upd= "UPDATE `employees` SET
`emp_no`='".$_POST['name']."',
WHERE `id`='".$_POST['id']."";
$do_upd = mysql_query($upd) or die(mysql_error());
}
?>
<form action="" method="post" enctype="multipart/form-data">
<table class="append-row" width="100%" border="0" bgcolor="#006699" height="60px" align="left"
style="padding:0 30px;">
<tr>
<td><input type="text" name="name" id="name" placeholder="name" value="<? php echo $get_item['emp_no'];?>"></td>
<input type="hidden" name="id" id="id" value="<?php echo $get_item['id'];?>" >
<td><input type="submit" name="edit" id="edit" value="edite"></td>
</tr>
</table>
</form>
您在UPDATE语句中$ _POST ['id']后缺少右引号,并且在WHERE条件之前也有不需要的逗号。
尝试:
$upd= "UPDATE `employees` SET `emp_no`='".$_POST['name']."' WHERE `id`='".$_POST['id']."'";
$upd= "UPDATE `employees` SET `emp_no`='".$_POST['name']."', WHERE `id`='".$_POST['id']."";
$do_upd = mysql_query($upd) or die(mysql_error());
您错过了'应该是...
$upd= "UPDATE `employees` SET `emp_no`='".$_POST['name']."', WHERE `id`='".$_POST['id']."'";
您也不需要在“ WHERE”之前加逗号
删除旧的Mysql并使用PDO使您和您的数据库更轻松,但是您的问题是WHERE
语句前的逗号。
$sql = $pdo->prepare("UPDATE employees SET emp_no = ? WHERE id = ?");
$sql->execute(array($_POST['name'], $_POST['id']));
根据个人喜好,切勿使用波浪号`来包围项目,如果是这样,则不使用关键字,则可能应重命名列/表/数据库。
emp_no
='“。$ _ POST ['name']。”',
逗号破坏了您的SQL
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.