如何在对象中或向右箭头执行数组。 对不起,我还是个大三学生
这是功能和工作
function check_level($id) {
global $connect;
$query = "SELECT level FROM s_user WHERE id='$id'";
$result = $connect->query($query);
$level = mysqli_fetch_assoc($result) ['level'];
return $level;
}
我尝试过这样,但错误,idk 如何在对象中数组
function check_level($id) {
global $connect;
$query = "SELECT level FROM s_user WHERE id='$id'";
$result = $connect->query($query);
$level = $result->fetch_object(['level']);
return $level;
}
你能帮我吗?谢谢。
你可能已经解决了。但无论如何,这是函数,它在返回值之前检查是否有结果。
如果未检索到任何记录,则此函数返回 NULL。
function check_level($id) {
global $connect;
$level = NULL;
$stmt = $connect->prepare("SELECT level FROM s_user WHERE id= ?");
$stmt->bind_param("i", $id);
$stmt->execute();
$result = $stmt->get_result();
if($result){
if($result->num_rows > 0){
$row = $result->fetch_object();
$level = $row->level; // this
}
}
else {
echo "MySQL Error: ".$connect->error;
}
return $level;
}
该函数还使用预准备语句来防止 sql 注入攻击。
阅读更多关于sql注入的信息。您必须准备并绑定参数作为上面的代码。$stmt只是"语句"或变量。