我在mysql中有一个像这样的表:
Id Name course_type module
-----------------------------------
1 php E scorm
2 java E test
3 php C test
4 php C scorm
我想检索包含course_type
和Name = 'Php'
的列module ='Scorm'
。
为此,我使用以下查询:
$sql= "select * from course where course_id='".$cou."' and module_name ='scorm' ";
$rete = mysql_query($sql);
foreach($rete as $reti) {
$co_ty =$reti->course_type;
}
如果我打印$co_ty
表示它显示EC。
我想要的是如果course_type
是E意味着输出将是E-learn,如果course_type
是C意味着输出将是Class。
但如果course_type
同时为'E'和'C'同名'Php'而模块'Scorm'意味着输出将为'Both'
怎么做?为此,我正在尝试这段代码:
if($co_ty == 'E') {
echo 'E-Learning';
} else if ($co_ty=='C') {
echo 'Classroom';
}
else {
echo 'Both';
}
但结果只是E-learn。
我不知道如何获得这个价值。请任何人帮助我
答案 0 :(得分:0)
你的代码的问题是你正在检查其他条件。 结果是一个数组,所以它首先找到E并且只打印E-Learning然后它会执行else条件。
你应该尝试这段代码......希望它有所帮助...
if($co_ty == 'E'){
echo 'E-Learning';
} if($co_ty=='C'){
echo 'Classroom';
}
答案 1 :(得分:0)
Try changing your code as below:
$sql= "select * from course where course_id='".$cou."' and module_name ='scorm' ";
$rete = mysql_query($sql);
$co_ty = '';
foreach($rete as $reti)
{
$co_ty .=$reti->course_type;
}
if($co_ty == 'E')
{
echo 'E-Learning';
}
else if($co_ty=='C')
{
echo 'Classroom';
}
else`enter code here`
{
echo 'Both';
}