我一直在做的和预处理语句一些工作,因为他们更安全的一列,但在以前版本的SQL阵列的读取($查询 - > fetch_array(MYSQL_ASSOC)),它并没有允许从数组中返回一个项目。获取从MySQL准备好的语句
function getForumInfo($id, $col){
global $mysqli, $db_table_prefix;
$stmt = $mysqli->prepare("SELECT ? FROM forums WHERE id = ?");
$stmt->bind_param("si", $col, $id);
$stmt->execute();
$stmt->bind_result($val);
$out = $stmt->fetch()[$val];
$stmt->close();
return $out;
}
有些事情只是看起来不对。
如果我要做到以下几点:
echo getForumInfo(7, 'name');
将它列名,其中id = 7只返回值?
' “?SELECT(东西)FROM表名WHERE ID =”' –
@弗雷德-II-是啊,我绑定,当我取回,我的问题主要是关于:$ OUT = $ stmt->取()[$ VAL]; – MysteryDev
如果行不被用户提供的,那么最好让它'选择$行从论坛WHERE ID =?'但是你的做法真的很麻烦,而且一个什么样的代码应该** **从未像 – samayo