我遇到了问题,我无法得到代码的结果。当我尝试调试代码时。我在我的代码中使用了IF语句。
这很简单,例如:如果kelas(基于user_id登录)= 1,则将其重定向到kelas1.php,如果kelas = 2,则重定向到kelas 2,否则没有kelas。
这是我的代码:
<?php
session_start();
if(!isset($_SESSION['user_id'])) {
header('Location: form_login_siswa.html');
}
$user_id = $_SESSION['user_id'];
include ("config.php");
$query = "SELECT kelas FROM t_siswa WHERE user_id = '$user_id'";
$hasil = mysql_query($query);
while ($data = mysql_fetch_array($hasil)) {
$kelas = $data['kelas'];
if($kelas = 1) {
include ("kelas1.php");
}
if($kelas = 2) {
include ("kelas2.php");
} else {
echo "Tidak ada kelas";
}
}
?>
任何人,请帮助解决问题。 赞赏你的帮助。
谢谢。
答案 0 :(得分:4)
您错过了else
,也没有使用正确的运算符进行比较。
此外,切换比较,以便第一个值始终是有效值。
if(1 == $kelas)
{
include ("kelas1.php");
}
else if(2 == $kelas)
{
include ("kelas2.php");
}
else
{
echo "Tidak ada kelas";
}
答案 1 :(得分:2)
$kelas = 1
是作业
$kelas == 1
是比较
答案 2 :(得分:1)
if($kelas = 1)
应该是
if($kelas == 1)
答案 3 :(得分:1)
尝试使用==而不是=。 “=”是赋值运算符,表达式获取右操作数的值。
if($kelas == 1)
{
include ("kelas1.php");
}
if($kelas == 2)
{
include ("kelas2.php");
}
else
{
echo "Tidak ada kelas";
}
此外,如果echo "Tidak ada kelas";
,该语句将始终($kelas == 1)
。这是故意的吗?
答案 4 :(得分:0)
在使用==
进行测试比较的if语句中,而不是用于分配的单=
答案 5 :(得分:0)
while ($data = mysql_fetch_array($hasil)) {
$kelas = $data['kelas'];
if($kelas == 1) {
include ("kelas1.php");
} elseif($kelas == 2) {
include ("kelas2.php");
} else {
echo "Tidak ada kelas";
}
}
while ($data = mysql_fetch_array($hasil)) {
switch($data['kelas']){
case 1:
include ("kelas1.php");
break;
case 2:
include ("kelas2.php");
break;
default:
echo "Tidak ada kelas";
}
}