1. Задавайте здесь вопросы о коде, которые не подходят в другие разделы, такие как:
    Дизайн > Верстка
    PHP > Как сделать на PHP
    Скрыть объявление

как осуществить

Тема в разделе "Web Coding", создана пользователем ivashka, 15 фев 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. ivashka

    ivashka

    Регистр.:
    16 май 2007
    Сообщения:
    151
    Симпатии:
    15
    Как сделать так, что бы когда пользователь перейдет на определенную страницу, запустился пхп скрипт, но пользователь ответа не получал, тоесть скрипт исполнится, но результаты браузеру не передадутся. Заранее благодарен.
     
  2. General Fizz

    General Fizz Боевой Генерал :)

    Регистр.:
    11 апр 2007
    Сообщения:
    753
    Симпатии:
    396
    Надо исключить из скрипта все функции, осуществляющие вывод, такие как echo, print и тд.

    А вообще, формулируйте подробнее название темы и вопрос.
     
  3. ivashka

    ivashka

    Регистр.:
    16 май 2007
    Сообщения:
    151
    Симпатии:
    15
    если исключить вывод то просто ничего не будет выводится, но браузер будет ждать завершения исполнения скрипта, а нужно что бы скрипт исполнялся уже независимо от пользователя.
     
  4. General Fizz

    General Fizz Боевой Генерал :)

    Регистр.:
    11 апр 2007
    Сообщения:
    753
    Симпатии:
    396
    Так сразу и надо было писать. :read:

    Запускаете из шелла (командной строки) следующую команду wget Перейти по ссылке -O /dev/null -o /dev/null -b

    Это значит, что весь вывод скрипта будет уничтожаться и после скрипт перейдет в фоновый режим. Не забывайте, что время исполнения скрипта ограничено также командой в php.ini и по умолчанию составляет 30 секунд. Установить его можно в исполняемом скрипте командой set_time_limit(1200); где 1200 - максимальное время работы скрипта в секундах.

    Или если запускать браузером, то использовать функции exec(Перейти по ссылке -O /dev/null -o /dev/null -b)
     
    ivashka нравится это.
  5. n42

    n42

    Регистр.:
    8 фев 2008
    Сообщения:
    206
    Симпатии:
    25
    если ты можешь запускать wget из командной строки то ты можешь запустить и вообще свой пхп интерепретатор со своим php.ini
    exec("nohup /usr/bin/php -i /home/login/php.ini /home/login/www/script.php");

    nohup создаёт демона. который работает сам посебе.

    ключ -i - может быть не правильный проверь сам php --help
     
  6. lobzik

    lobzik

    Регистр.:
    8 авг 2006
    Сообщения:
    311
    Симпатии:
    49
    2ivashka
    PHP:
    ignore_user_abort (true)
    Если сделать так, то скрипт выполниться в незавсимости от того дождался ли юзер его завершения или ушел со страницы. Это то что тебе надо было?
     
    ivashka нравится это.
  7. xorbit13

    xorbit13 Создатель

    Регистр.:
    9 фев 2008
    Сообщения:
    41
    Симпатии:
    10
    ignore_user_abort();
    set_time_limit(0);
    ob_start();

    require_once( 'xxx.php' ); // скрипт который нужно выполнить

    ob_end_clean();
     
    ivashka нравится это.
Статус темы:
Закрыта.