我已经读过这个主题在php中使用关联数组构造update语句,但是它和我需要的有点不同。
我有一张table t1
.
+--------------+----------------+----------------+------------+
| money | exp | uid | remark |
+--------------+----------------+----------------+------------+
| 9999 | 9999 | 1 | |
| 1234 | 567 | 2 | |
| 8887 | 88 | 3 | |
+--------------+----------------+----------------+------------+
我想创建一个php function
打电话 jnupdateuser
要更新此表,请执行以下操作:
jnupdateuser(array('money'=>10000,'exp'=>10000),1);
之后的数据将是:
+--------------+----------------+----------------+------------+
| money | exp | uid | remark |
+--------------+----------------+----------------+------------+
| 10000 | 10000 | 1 | |
| 1234 | 567 | 2 | |
| 8887 | 88 | 3 | |
+--------------+----------------+----------------+------------+
如果你这样做: jnupdateuser(array('remark'=>'None'),2);
数据如下:
+--------------+----------------+----------------+------------+
| money | exp | uid | remark |
+--------------+----------------+----------------+------------+
| 9999 | 9999 | 1 | |
| 1234 | 567 | 2 | None |
| 8887 | 88 | 3 | |
+--------------+----------------+----------------+------------+
我的代码如下:
function jnupdateuser($jnparams = array(),$uids){
$conditionStrings = array();
foreach ($jnparams as $column => $value) {
//how to create this part to update my table? or maybe I was totally wrong?
}
return DB::query("UPDATE ".DB::table('game_jnmx_user')." SET ??? = ??? WHERE uid = $uids ");
}
``` `DB::query` 是我的模板语言,与 `mysqli_query` , `DB::table` 模板语言;
谢谢您。
1条答案
按热度按时间sq1bmfud1#
试着这样做:
它根据输入参数构建集合,我添加了一些验证。请注意,在这里您应该以某种方式对放入数据库的数据进行转义或清理,因为它容易受到sql注入的攻击。