[问题] PHP PDO UPADATE SET ? = ?

楼主: HoloLens (GoogleGlass没了ww)   2015-04-04 21:58:24
※ [本文转录自 ask 看板 #1L7-cRKR ]
作者: HoloLens (我就是抄GoogleGlass) 看板: ask
标题: [请问] PHP PDO UPADATE SET ? = ?
时间: Sat Apr 4 21:39:36 2015
小弟刚刚在写PHP但发现似乎
$sql = 'UPDATE `combook` SET ? = ? WHERE `id` = ?';
$sth = $Link->prepare($sql);
$sth->execute(array($_POST['n'], $_POST['thing'], $_POST['i']));
这样子的code无法顺利UPDATE数据库的东西,不知道是不是因为SET后面不行用?,如果是
的话是不是就只能手动串,但是好像就不太安全QQ,所以想请教大家
作者: KawasumiMai (さあ、死ぬがいい)   2015-04-04 22:33:00
? = ? ???你要Upate什么东西?SET 字段 = 值 WHERE id = 多少不然系统怎么会知道你要干嘛= =?
作者: bibo9901 (function(){})()   2015-04-04 22:55:00
PDO parameter 不支援 column name 或 table name 喔先用 in_array 检查 $_POST['n'] 是否在白名单里,再放入 $sql
作者: ian71135 (ian)   2015-04-05 03:05:00
$_POST[n]存成变量不要塞近execute
楼主: HoloLens (GoogleGlass没了ww)   2015-04-05 11:48:00
谢谢大家,我大概懂了~

Links booklink

Contact Us: admin [ a t ] ucptt.com