我有一个jQuery跟踪onChage .change()
事件的表单,所以当更改某些内容时,它会运行一个ajax请求,并传入列,id和url中的值。
这里我有应该更新数据的PHP代码。
我现在的问题是如何动态构建mySQl字符串。
以及如何回显db上刚刚更改的更改/更新。
这是我正在尝试使用的PHP代码。
<?php require_once('Connections/connect.php'); ?>
<?php
$id = $_GET['id'];
$collumn = $_GET['collumn'];
$val = $_GET['val'];
?>
<?php
mysql_select_db($myDB, $connection);
// here i try to build the query string and pass in the passed in values
$sqlUpdate = 'UPDATE `plProducts`.`allPens` SET `$collumn` = '$val' WHERE `allPens`.`prodId` = '$id' LIMIT 1;';
// here i want to echo back the updated row (or the updated data)
$seeResults = mysql_query($sqlUpdate, $connection);
echo $seeResults
?>
这个例子好吗?
$sqlUpdate = 'UPDATE `plProducts`.`allPens` SET "{$collumn}" = "{$val}" WHERE `allPens`.`prodId` = "{$id}"LIMIT 1;';
答案 0 :(得分:3)
使用字符串连接运算符.
。
$sqlUpdate = 'UPDATE `plProducts`.`allPens` SET `' . $collumn .'` = \'$val\' WHERE `allPens`.`prodId` = '. $id . ' LIMIT 1;';
mysql_query(mysql_escape_string($sqlUpdate));
当然,这会产生大量SQL injection个漏洞。