【发布时间】:2013-11-25 18:11:52
【问题描述】:
我正在开发一个站点,在这个站点中,我的客户可以更改他的 table_id,但是当我尝试更改它时。它在数据库中变为 0。 table_id 列在 mysql 中是整数。我想我的问题就在那里,但我无法解决。我使用 X-editable 来编辑 table_id;
http://vitalets.github.io/x-editable/
我的代码在下面..
echo 'Table name: <label id="rez1" >'.$row['table_id'].'</label>';
<script>
$.fn.editable.defaults.mode = 'inline';
$(document).ready(function(){
$('#rez1').editable({
name: 'table_id',
type: 'text',
pk: 1,
url: 'main.php',
title: 'Enter username'
});
});
</script>
<?php
$id= $_POST['pk'];
$table_id= (int)$_POST['name'];
mysql_query("UPDATE rezervasyon SET table_id='".$table_id."' WHERE rez_id='".$id."'");
?>
【问题讨论】:
-
在您的 javascript 中,您只需将
name设置为硬编码的字符串值'table_id'而不是实际数字...也许您打算执行类似$('#rez1').html()的操作? -
您的代码极易受到SQL injection 攻击。为了您的用户和您自己,请使用参数化查询。
标签: javascript php x-editable