Не отображаются данные на второстепенной и третьестепенной переменной.

Discussion in 'PHP' started by horsethe, 7 Sep 2012.

  1. horsethe

    horsethe New Member

    Joined:
    5 Sep 2012
    Messages:
    4
    Likes Received:
    0
    Reputations:
    0
    PHP:
    Не отображаются данные на второстепенной и третьестепенной переменной.[/b]

    Я немного помогаю на собственной инициативе в доработке игрыВ общем задача была доработать файл помощичто я собственно и сделалаНо пришлось немного изменить файл добавить еще одну переменнуюИтогиз трех переменных работает только 1. При ссылке на остальные переменные выводится пустая страница с одним только заглавием Что из этого получилось можно посмотреть на [URL]http://rem-sot.ru/bot/faq.php[/URL]  (для теста заливала к себе на сайт) 



    [URL]http://pastebin.com/H5NCm689[/URL]  тут скрипт сам . 

     
    подскажите пожалста где напортачилаесли не трудно или хотяб из за чего так вообще может бытьЗаранее спасибо.
     
    #1 horsethe, 7 Sep 2012
    Last edited: 7 Sep 2012
  2. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    horsethe условия if и elseif находятся на разном уровне вложенности. А именно - по ветке if проверяется переменная $m а по ветке else - уже переменная $n - естественно вторая ветка никогда не выполнится. В такой лапше кода не сложно запутаться.

    Откройте для себя переменные, в которых можно хранить текстовые значения, чтобы глаз не замыливался. Оператор switch. И купите/скачайте нормальную IDE с подсветкой блоков
     
    _________________________
    #2 Gifts, 7 Sep 2012
    Last edited: 7 Sep 2012
  3. horsethe

    horsethe New Member

    Joined:
    5 Sep 2012
    Messages:
    4
    Likes Received:
    0
    Reputations:
    0
    Я просто совсекм новичок в этом . Ориентировалась по тому коду который уже был и его переделывала. есть такой критерий что все было в одном файле, то есть выводить что то куда то в отдельные файлы нельзя .

    что касается if и elseif как я понимаю мне сейчас надо расставить что бы к перемненной m "вел" if, к переменной n вел elseif ? а к переменной z тогда ?
     
  4. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    horsethe
    Я не заставляю вас создавать файлы, но отделите данные от логики - тот кто будет потом на это смотреть - скажет вам спасибо.

    Вот как вы сейчас написали - так у вас уже есть. И это неправильно.

    Попробуйте проговорить тот код (а именно условия), что у вас есть и проанализировать хотя бы с точки зрения обывательской логики. Урезанная версия без принтов и правильными отступами, для простоты:

    PHP:
    if (!isset($m)) {
        print(
    "m=null");
    } else if (
    $m == "zdaniya") {
        if (!isset(
    $n)) {
            print(
    "m=zdaniya&n=null");
        }
    } elseif (
    $n == "ratusha") {
        if (!isset(
    $z)) {

        }
    }
     
    _________________________
    1 person likes this.
  5. horsethe

    horsethe New Member

    Joined:
    5 Sep 2012
    Messages:
    4
    Likes Received:
    0
    Reputations:
    0
    спасибо, дело было именно в этом ))