Автор Тема: PHP B HTML  (Прочитано 3470 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн kolobok

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 15
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
PHP B HTML
« : 27 Декабря 2003, 03:11:40 »
Подскажите "чайнику".Вопрос в следующем.
В HTML последовательно меняются три формы  - кнопка,форма регистрации и надпись "Зарегин".Так вот первые две работают нормально,а надпись не хочет,появляется снова кнопка.Из за чего это происходит я понимая,а вот как этого избежать додуматся не могу.
Я пишу следуещее

    if () {
     print "<кнопка>"
    ;
    }
   else if ()
      { if()
    print "<форма>"
   ;
   }
   else
   {
   print "<надпись>"
  ;
  }
  ?>

Я понимаю что ELSE вроде не правильно,что по идее здесь должно быть просто,но как правильно догнать не могу.
Не сочтите за труд,просветите "чайника".

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
PHP B HTML
« Ответ #1 : 27 Декабря 2003, 10:08:02 »
if ( $cond1) {
    print "кнопка";
} elseif ( $cond2 ) {
    print "форма";
} else {
    print "надпись";
}
?>
или
if ( $cond1) {
    print "форма";
} elseif ( $cond2 ) {
    print "надпись";
} else {
    print "кнопка";
//ИМХО, так логичнее
}
?>
LJ: Backslashed life (rss)

Оффлайн kolobok

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 15
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
PHP B HTML
« Ответ #2 : 28 Декабря 2003, 05:25:39 »
Спасибо,получилось.Только я не могу понять,почему не работает знак "=",если я пишу
if ($cond = "1") {
print " <форма ?cond=2>";
}elseif ( $cond = "2" ) {
print "надпись";
}else {
print "<кнопка ?cond=1>";
}
?>
то она выводит сразу форму и все больше не начего не реагирует.
Пришлось писать
if ($cond > "3") {
print " <форма ?cond=2>";
}elseif ( $cond > "1" ) {
print "надпись";
}else {
print "<кнопка ?cond=4>";
}
?>
насколько я понимаю,когда выражение истенное,то она пишет первое что идет за ним,если ложное,то проверяет дальше,если не однрго истенного нет,то пишет то что после else.Если это так то почему "=" не работает ?
Или я опять что то не догоняю ?

Оффлайн Croaker

  • Модератор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 927
  • +0/-0
  • 0
    • Просмотр профиля
    • http://alex-files.ru
PHP B HTML
« Ответ #3 : 28 Декабря 2003, 05:42:13 »
"=" - это знак присваивания, а не сравнения. И условие ($cond = "1") у тебя отрабатывает всегда. Если нужно сравнить, пиши "==".
Не все коту матрица.

Оффлайн kolobok

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 15
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
PHP B HTML
« Ответ #4 : 28 Декабря 2003, 05:50:38 »
Я писал " ==",она выдает что это ошибка !

Оффлайн Croaker

  • Модератор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 927
  • +0/-0
  • 0
    • Просмотр профиля
    • http://alex-files.ru
PHP B HTML
« Ответ #5 : 28 Декабря 2003, 05:58:10 »
Покажи текст ошибки, и свой код, где ты писал "==".
Не все коту матрица.

Оффлайн kolobok

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 15
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
PHP B HTML
« Ответ #6 : 28 Декабря 2003, 06:43:59 »
Спасибо,разобрался,я с дуру писал через пробел "= =",поэтому и ошибку выдавала !!

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28