2016-02-04 4 views
0

У меня есть таблица в MySQL, как это:Как извлечь значения таблицы образуют 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 означает, что отображение ЕС.

Что я хочу, если course_type E означает, что выход будет E-learn, а если course_type - C, то выход будет Class.

Но если course_type одновременно «E» и «C» для того же имени «Php» и модуль «SCORM» означает, что выход будет «И»

Как сделать это? Для этого я пробую этот код:

if($co_ty == 'E') { 
    echo 'E-Learning'; 
} else if ($co_ty=='C') { 
    echo 'Classroom'; 
} 
else { 
    echo 'Both'; 
}   

Но результатом будет только E-learning.

Я не знаю, как получить это значение. Пожалуйста, помогите мне

+0

Где вы положили ваш 'if' код? –

+0

Если вы хотите получить столбец ', который содержит имя', то почему в вашем запросе есть' course_id = '?. $ Cou. "''? –

+0

В моей форме у меня есть опция выбора в том, что имя будет отображаться. я выбираю имя и нажимаю «Отправить» означает, что время, которое записи хотят отобразить. для этого я передаю переменную $ cou – Nisanth

ответ

0

проблема для кода ура заключается в том, что вы проверяете другое условие. В результате получается массив, поэтому сначала он находит E и печатает только E-Learning, а затем он оставляет выполнение условия else.

Вы должны попробовать этот код ... надеюсь, что это помогает ...

if($co_ty == 'E'){ 
    echo 'E-Learning'; 
    } if($co_ty=='C'){ 
    echo 'Classroom'; 
    } 
+0

спасибо за ваш ответ. Если мне нравится ваш способ, значит, в то время, если тип course_type, имеющий C или E с двумя (или более) равными учетными записями, означает, что он имеет проблему. вы можете помочь мне – Nisanth

+0

Он будет печатать E-learning и класс, когда он станет таким же. –

+0

Вы можете также проверить с помощью логического ИЛИ вместо else, если условие, это if ($ co_ty == "E" || $ co_ty == "C") {} –

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'; 
}  
+0

не могут получить правильное значение. если тип course_type равен E, а имя и модуль - то же самое. totallay, у меня есть 3 записи (например), означает, что он будет печатать как только – Nisanth

Смежные вопросы