За последние 24 часа нас посетили 16790 программистов и 1643 робота. Сейчас ищут 872 программиста ...

Определить перезагрузку

Тема в разделе "PHP для новичков", создана пользователем bizovo, 11 июн 2009.

  1. bizovo

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

    С нами с:
    25 мар 2009
    Сообщения:
    42
    Симпатии:
    0
    Очень простое действие, но решение как всегда сложное.
    Мне надо изменять информацию при перезагрузки страницы, как мне узнать, что была перезагрузка. Моё решение: заводить сессионную переменную и тупо проверять на изменение. Но мне кажется это ч/з попу и есть более простой способ. Может кто подскажет....
     
  2. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    откуда такая задача? может и не в обновлении дело?
     
  3. bizovo

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

    С нами с:
    25 мар 2009
    Сообщения:
    42
    Симпатии:
    0
    Вы на что то намекаете....?
    Мне надо, чтобы менялись баннера при перезагрузки страницы. Есть же функция в пхп которая при перезагрузки выдает 1/0. Если знаете такую то скажите.
    Перезагрузка может быть обычным обновлением страницы или выполнилось действие.
     
  4. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    bizovo
    Почему не выводить баннеры рандомно? О_о
     
  5. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    ну мы же не ищем легких путей... нам сложности надо, трудности, а потом их решать ночами и гордится этим.
     
  6. bizovo

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

    С нами с:
    25 мар 2009
    Сообщения:
    42
    Симпатии:
    0
    Да думал я про рандом
    rand(0, 1);
    но ведь это не 100% что он будет менять, может же ведь три раза выдать 1 или 0
    А я хотел, чтобы была смена всегда как происходит перезагрузка страницы.
    Конечно если никто другого не скажет сделаю ч/з рандом и не буду гордиться собой ночами, а так хочется ....
     
  7. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    а я хочу что бы на сайтах баннеров не было.
     
  8. bizovo

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

    С нами с:
    25 мар 2009
    Сообщения:
    42
    Симпатии:
    0
    Товарищ 440Hz, я так понял вам скучно и вы пытаетесь тут демогогию развести?
    Я так понял вам на правах модератора с сигаретой в зубах тут можно все? Молодец, продолжайте в таком же духе и вы тут останитесь один...поумничать нескем будет.
     
  9. bizovo, если выбирать между идиотом с глупыми однообразными вопросами, заданными тыщу раз на каждом форуме, и демагога с сигаретой в зубах, я выберу демагога. С ним хоть не скучно будет.
     
  10. bizovo

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

    С нами с:
    25 мар 2009
    Сообщения:
    42
    Симпатии:
    0
    Хороший форум, идиотом обозвали :)
    Вопрос простой, но не глупый, поэтому и задан в разделе для начинающих.
    Ну да ладно, о чем говорить с гениями, у вас своя философия непонятноя для обычных земных людей.
    Жалко мне вас.
     
  11. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    bizovo
    Есть проблема у вас. Я подсказываю вам более лёгкое решение. Даже могу его набросать. Могу даже набросать то, которое нужно именно вам, но только в том случае, если вы сможете доказать мне, что оно действительно лучше/легче, чем моё.

    Почему rand (0, 1)?
    key = mt_rand (0, количество_баннеров).
    banner = banners[key]
     
  12. bizovo

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

    С нами с:
    25 мар 2009
    Сообщения:
    42
    Симпатии:
    0
    Я сделал рандомом.
    У меня 2 баннера, это key = mt_rand (0,1)
    но ведь key не всегда меняется в рандоме с 0 на 1, он может мне несколько раз показать одно и тоже число.
    А мне надо чтобы при каждой перезагрузке меналось с 0 на 1
     
  13. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    1. хранишь в сессии кол-во просмотренных страниц.
    2. при выводе баннера:

    $bannum = $pages & 1;

    3. ...
     
  14. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    тут без косяка не обойтись. такие вопросы задают заумные, что ваще...
     
  15. Apple

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

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    А как насчёт того, чтобы логикой немного поработать?

    PHP:
    1. <?php
    2.  
    3.  
    4. if(isset($_SESSION['banner'])) {
    5.     while(true) {
    6.         $currrent = mt_rand(1, кол-во_баннеров);
    7.  
    8.         if($_SESSION['banner'] != $current) {
    9.             $_SESSION['banner'] = $current;
    10.            
    11.             break;
    12.         }
    13.     }
    14. }else{
    15.     $_SESSION['banner'] = mt_rand(1, кол-во_баннеров);
    16. }
    17.  
    18. // ...
    19.  
    20. echo $_SESSION['banner'];
    21.  
    22. ?>
    Сложно?
    Знаний никаких особых не требуется, требуется только ЛОГИКА.
    Задача наипростейшая.
     
  16. bizovo

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

    С нами с:
    25 мар 2009
    Сообщения:
    42
    Симпатии:
    0
    Ребята вот молодцы, вот форум, вот это я понимаю!!!
    С логикой поработать мне не в заподло, я просто думал есть савсем простое решение без сессии.
    Заметьте, про сессию я писал в самом первом посте.
    Ну если тут только сессия и нет стандартной функции пхпешной, то умываю руки, всем пардон, всем спасибо
     
  17. Apple

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

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Вы не форум вините или других людей, а себя за незнание и недопонимание основ программирования.
    Язык предоставляет средства, а программист, используя эти средства управления, строит АЛГОРИТМ.
    А вы хотите одной функцией получить алгоритм.
     
  18. bizovo

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

    С нами с:
    25 мар 2009
    Сообщения:
    42
    Симпатии:
    0
    Разве я кого винил?
    Тут только меня и винят, что идиот и недоучка.
    Я за то, что бы был мир на всей планете.
    А если вы знаете то напишите, либо ваще не пишите.
    Какие у меня умственные способности я знаю сам, просто не люблю когда из себя вундеркиндов изображают.
    Проще надо быть.
     
  19. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Вопрос на самом деле глубже, чем кажется. С какого баннера начинать считать, с 0 или с 1? Ведь сессия заводится для каждого клиента, значит каждый будет сначала видеть 0 баннре, а если не обновит страницу, то 1 так и не увидит. Выход - выбирать первый баннер рандомно. Рандом, как известно, выдает случайное число, а не то, которого небыло. Значит, все равно один баннер может быть показан чаще, чем другой.
    Вывод: ставить рандом и не страдать ерундой.
     
  20. Apple

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

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Во всяком случае, вариант выше гарантирует, что один и тот же банер не будет показан два раза подряд.
    А так, можно писать систему, по которой банеры будут выводиться с учетом частоты показа и на основе данных статистики пользователя.
    Но кому оно надо?