好的我有一个PHP页面,我有一个数据库。 在我的数据库中,我有一个带有字段的表格其中一个字段称为帐户类型它是枚举('n','m','s') 我试图在我的PHP页面上显示如果用户是 N ,如果用户是 E 专家用户或 S Super,它应该说普通用户用户...
我该怎么做?
PHP页面顶部
<?php
// Query member data from the database and ready it for display
$sql = mysql_query("SELECT * FROM members WHERE id='$id' LIMIT 1");
while($row = mysql_fetch_array($sql)){
$phone = $row["phone"];
$country = $row["country"];
$state = $row["state"];
$city = $row["city"];
$accounttype = $row["accounttype"];
$bio = $row["bio"];
}
?>
我想在页面上显示的地方这是代码。现在它只是放了一个空白区域。
<span class="admin">Edward</span>
<span class="date">March 19, 2048</span>
<span class="tag"><?php echo "$accounttype"; ?></span>
<span class="comment"><a href="#">166 comments</a></span>
答案 0 :(得分:1)
首先建立连接,不要花费一段时间,制作一个像这样的
if($row = mysql_fetch_array($sql)){
$phone = $row["phone"];
$country = $row["country"];
$state = $row["state"];
$city = $row["city"];
$accounttype = $row["accounttype"];
$bio = $row["bio"];
}
而不是
$speaking_type = null;
switch($accounttype) {
case 'n':
$speaking_type = 'Normal User';
break;
case 'm':
$speaking_type = 'Expert User';
break;
case 's':
$speaking_type = 'Super User';
break;
default:
$speagink_type = 'none';
//throw new Exception('unsupported account type '.$accounttype);
}
echo $speaking_type;
答案 1 :(得分:0)
我认为问题在于你的范围。您的变量在while循环中定义,因此它们在文档中进一步未知。尝试在顶部(在while循环之前)实例化它们,如下所示:
$phone = null;
$country = null;
$state = null;
$city = null;
$accounttype = null;
$bio = null;
比变量将在while之外知道,并且在打印时将记住这些值。
答案 2 :(得分:0)
我以为你没先连接到数据库。使用以下代码连接你的凭证。这就是你看到空白的原因
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
// some code
mysql_close($con);