Php 如何从mysql数据库回显枚举值?
我有一个名为“Type”的列的表“members”,它是“enum”,值是“member、mod、admin、dev”。 我想知道如何通过$\u SESSION['type']甚至仅通过$type将枚举值设置为member? 像这样的Php 如何从mysql数据库回显枚举值?,php,mysql,sql,enums,echo,Php,Mysql,Sql,Enums,Echo,我有一个名为“Type”的列的表“members”,它是“enum”,值是“member、mod、admin、dev”。 我想知道如何通过$\u SESSION['type']甚至仅通过$type将枚举值设置为member? 像这样的 if ($stmt = $con->prepare('SELECT ID, PASSWORD, TYPE FROM members WHERE NICK = ?')) { // Bind parameters (s = string, i = int
if ($stmt = $con->prepare('SELECT ID, PASSWORD, TYPE FROM members WHERE NICK = ?')) {
// Bind parameters (s = string, i = int, b = blob, etc), in our case the username is a string so we use "s"
$stmt->bind_param('s', $_POST['INick']);
$stmt->execute();
// Store the result so we can check if the account exists in the database.
$stmt->store_result();
if ($stmt->num_rows > 0) {
$stmt->bind_result($id, $password, $Type);
$stmt->fetch();
session_regenerate_id();
$_SESSION['loggedin'] = TRUE;
$_SESSION['id'] = $id;
$_SESSION['tipo'] = $Type;
} else {
echo '<center>';
echo 'No data found at that table!';
echo '</br><button onclick="Refres();">refresh</button><center>';
}
if($_SESSION['type'] !== "member"){
echo '</br>';
echo 'Your Account - '.$Type.' - do have level access to that page.';
exit();
}
if($stmt=$con->prepare('SELECT ID,PASSWORD,TYPE FROM members WHERE NICK=?')){
//绑定参数(s=string、i=int、b=blob等),在本例中,用户名是字符串,因此使用“s”
$stmt->bind_param('s',$\u POST['ini']);
$stmt->execute();
//存储结果,以便我们可以检查数据库中是否存在该帐户。
$stmt->store_result();
如果($stmt->num_rows>0){
$stmt->bind_result($id、$password、$Type);
$stmt->fetch();
会话_重新生成_id();
$\u会话['loggedin']=TRUE;
$\会话['id']=$id;
$\会话['tipo']=$Type;
}否则{
回声';
echo“在该表中找不到数据!”;
回显“刷新”;
}
如果($_会话['type']!=“成员”){
回音“”;
回显“您的帐户-”.$Type.-是否具有该页面的级别访问权限。“;
退出();
}
它向我显示了一个错误“Notice:Undefined variable:Type”即使设置为null,类型是否在循环之外定义?别介意,我注意到你调用$Session['tipo']不应该是$Session['Type']@Shane我检查了它,并对其进行了更改,但没有任何区别。