За последние 24 часа нас посетили 17586 программистов и 1653 робота. Сейчас ищут 857 программистов ...

Не срабатывает второе условие elseif

Тема в разделе "PHP для новичков", создана пользователем Dmtq, 5 мар 2014.

  1. Dmtq

    Dmtq Активный пользователь

    С нами с:
    2 мар 2014
    Сообщения:
    28
    Симпатии:
    0
    Когда я передаю *.php - получаю none,
    передаю *.php?clact=1 - получаю act set 1,
    передаю *.php?clact=0 - получаю снова none.
    Почему?

    Код (Text):
    1.             $clact = $_GET['clact'];
    2.             if(empty($clact)) {
    3.             $act='none';
    4.             }
    5.             elseif($clact == 1){
    6.             $act='act set 1';
    7.             }
    8.             elseif($clact == 0){
    9.             $act='act set 0';
    10.             }
    11.             print ($act);
     
  2. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    По качану! =)
    0 это ничего.
    empty():
    Неужели, так сложно было открыть глаза и посмотреть?
    Тут же все написано:
    php.net/manual/ru/function.empty.php
     
  3. Dmtq

    Dmtq Активный пользователь

    С нами с:
    2 мар 2014
    Сообщения:
    28
    Симпатии:
    0
    Понял, спасибо.
    Самый простой вариант использовать не 0 и 1, а 1 и 2?
    Душе приятней, все же, 0 и 1.
    Печаль...
     
  4. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Код (PHP):
    1. if(empty($clact) && 0!=$clact) { 
     
  5. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    попробуй написать:
    Код (Text):
    1. if ($clact === '0') { /* .... */ }
     
  6. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    VLK, и в чем же смысл вашего написанного? Что меняется от этого? Ничего!
    В его примере поможет, только то, что я написал.
    Либо писать сравнения до проверки на empty.
    Хотя у него все равно не правильно написано и к тому еще и не логично.
     
  7. Dmtq

    Dmtq Активный пользователь

    С нами с:
    2 мар 2014
    Сообщения:
    28
    Симпатии:
    0
    Ну так приведите пример логичного. Буду благодарен. При написании грозного и высокомерного ответа помните, что радел форума называется "* для новичков"
     
  8. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    Код (Text):
    1. $val = $_GET['val'];
    2.  
    3. if(!isset($val)) {
    4. $act='none';
    5. }
    6.  
    7. elseif($val === '1'){
    8. $act='act set 1';
    9. }
    10.  
    11. elseif($val === '0'){
    12. $act='act set 0';
    13. }
    14.  
    15. print ($act);