根据变量动态生成html页面,如何根据HTML中定义的变量动态生成MYSQL UPDATE语句FORM...

我使用一个相当长的HTML表单来更新与产品相关的大量细节 - 为简洁起见,我不会共享整个表单。然而,为了说明的目的这里有一个片段:如何根据HTML中定义的变量动态生成MYSQL UPDATE语句FORM

HTML表单

/>

// other fields

我的问题是发布形式update_ac.php的时候 - 我怎么能动态生成基于已完成的领域的MYSQL更新语句?

这里是我的表单操作页面的例子:

PHP表单操作

foreach ($_POST as $key => $value) {

$$key = $value;

}

$sql= mysql_query ("

UPDATE product SET

title='".$title."',

rating='".$rating."',

season='".$season."',

brand_id='".$brand_id."',

category='".$category."',

... etc ");

?>

我不希望要申报的每一个字段,它可能需要的UPDATE语句更新。我希望UPDATE语句只针对有关字段,因为从表单中发布已定义的PHP变量。

目前,我收到很多NOTICE: Undefined variable x,发布表单时已经有空字段。

我希望这是有道理的 - 有点啰嗦。

有什么建议吗?由于

UPDATE

从@ Styphon的答案继 - 我修改它稍微包括在查询结束时WHERE条件。

$query = "UPDATE product SET";

$comma = " ";

foreach($_POST as $key => $val) {

if(! empty($val)) {

$query .= $comma . $key . " = '" . mysql_real_escape_string(trim($val)) . "'";

$comma = ", ";

}

}

$product_id = $_POST['product_id'];

$query = $query . "WHERE product_id = '".$product_id."' ";

+0

查看'isset'也许> –

2014-09-05 10:29:04

+0

@Fluffeh - 这并不能解决我的问题,因为我不得不测试每个可能的变量对ISSET。我试图避免必须声明超过50个变量。 –

2014-09-05 10:55:58

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值