Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (2) [1] 2  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> что будет если закрыть страницу выполняющую код
Strannik  
 ۩     Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 10 дней
Карма: 1




Добрый день. К примеру есть страница, на ней мы нажимаем кнопку и методом ajax запускаем выполнение php скрипта(к примеру скрипт на 10 000 строк). Скрипт выполняется на другой странице(в браузере она не открывается), на которую мы послали команду по ajax.

Вопрос: что будет если закрыть страницу с которой отправляли команду? Выполнится ли скрипт или он остановится?

P.S.: сорри за глупый вопрос)
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 23010
Пользователь №: 20039
На форуме: 15 лет, 3 месяца, 15 дней
Карма: 623




в теории должен остановиться, если ты не отключил через ignore_user_about


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26774
Пользователь №: 21350
На форуме: 15 лет, 8 дней
Карма: 756




скорее всего болт будет, но есть http://php.net/manual/en/function.ignore-user-abort.php wink.gif


--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26774
Пользователь №: 21350
На форуме: 15 лет, 8 дней
Карма: 756




блин.. как не успел biggrin.gif


--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 10 дней
Карма: 1




т.е. мы ставим
ignore_user_abort(true);

и если пользователь закрывает браузер, то код все равно будет выполнен?
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 23010
Пользователь №: 20039
На форуме: 15 лет, 3 месяца, 15 дней
Карма: 623




Strannik
да


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
pak  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Александр
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 401
Пользователь №: 22806
На форуме: 14 лет, 8 месяцев, 25 дней
Карма: 24

Не курю:
15 лет, 2 месяца, 21 день


Цитата (Strannik @ 14.08.2012 - 15:43)
т.е. мы ставим
ignore_user_abort(true);

и если пользователь закрывает браузер, то код все равно будет выполнен?

надо это запомнить, а где это обычтно пригодиться ?
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 23010
Пользователь №: 20039
На форуме: 15 лет, 3 месяца, 15 дней
Карма: 623




pak
много где. Особенно где страницы выполняет множество действий и тебе не хочется, что спустя 1 минуту её закрыли, типо не работает smile.gif


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
pak  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Александр
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 401
Пользователь №: 22806
На форуме: 14 лет, 8 месяцев, 25 дней
Карма: 24

Не курю:
15 лет, 2 месяца, 21 день


например загрузка картинок)
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 10 дней
Карма: 1




попробовал, работает, только скрипт не до конца выполняется

в php.ini
настройки
max_execution_time = 144000
max_input_time = 144000

есть ли еще параметры которые могут прекратить работу скрипта?
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 23010
Пользователь №: 20039
На форуме: 15 лет, 3 месяца, 15 дней
Карма: 623




set_time_limit(0);


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 10 дней
Карма: 1




inpost
спасибо, пока проскочил.
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 10 дней
Карма: 1




импорт заглох на 2030 строке...(((
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 23010
Пользователь №: 20039
На форуме: 15 лет, 3 месяца, 15 дней
Карма: 623




Strannik
А ты вывод ошибок в файл помести. И что значит "заглох"? Может соединение с БД закрылось? И вообще, для импорта и экспорта самих таблиц используй sypex dumper


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 10 дней
Карма: 1




делаю такую штучку:


ignore_user_abort(true);
set_time_limit(0);
$i=0;
conn();
$sql_dump="SELECT * FROM `dump` WHERE `id`='1'";
$res_dump=mysql_query($sql_dump);
if(!$res_dump||mysql_num_rows($res_dump)<1){$sql_dump2="INSERT INTO `dump` (`text`,`status`) VALUES ('Идет обновление базы данных...','yes')";}else{$sql_dump2="UPDATE `dump` SET `text`='Идет дамп...',`status`='yes' WHERE `id`='1'";}
$res_dump2=mysql_query($sql_dump2);
$r1='';$r2='';$r3='';$r4='';
$filename="csv.csv";
$handle = fopen("$filename", "r");
$count_rows=0;
$import='';
$error1='';
$error2='';
$error3='';
$error4='';
while (($data = fgetcsv($handle, 1000000, ";")) !== FALSE)
{
$count_rows++;
$oldperiod = strtotime($data[1]);
$newperiod = date('Y-m-d H:i:s', $oldperiod);

$olddate_create = strtotime($data[15]);
$newdate_create = date('Y-m-d H:i:s', $olddate_create);

$oldperiodmeter_reading = strtotime($data[13]);
$newperiodmeter_reading = date('Y-m-d H:i:s', $oldperiodmeter_reading);

if($data[2]!=''){
$sql0="SELECT * FROM `balans` WHERE `period`='$newperiod' AND `idn`='$data[2]'";
$res0=mysql_query($sql0);
if(!$res0||mysql_num_rows($res0)<1){$importone="INSERT INTO `balans`(`idn`, `period`, `start_saldo`, `earn_m`, `earn_r`, `pay`, `finish_saldo`) VALUES ('$data[2]', '$newperiod', '$data[5]', '$data[7]', '$data[6]', '$data[8]', '$data[9]')";}
else{$importone="UPDATE `balans` SET `start_saldo` = '$data[5]', `earn_m` = '$data[7]', `earn_r` = '$data[6]', `pay` = '$data[8]', `finish_saldo` = '$data[9]' WHERE `idn` ='$data[2]' AND `period`='$newperiod'";}
$res_importone=mysql_query($importone) or die(mysql_error($res_importone));//$error1.=mysql_error($res_import1);
$sql0e="SELECT * FROM `equipment` WHERE `idn`='$data[2]'";
$res0e=mysql_query($sql0e);
if(!$res0e||mysql_num_rows($res0e)<1){if($data[10]!='0'){$importtwo="INSERT INTO `equipment`(`idn`, `type`, `model`, `date_create`, `serial_number`, `date_of_sealing`, `seal_number`, `state`) VALUES ('$data[2]', '', '$data[11]', '$newdate_create', '$data[12]', '', '', '')";$res_importtwo=mysql_query($importtwo) or die(mysql_error($res_importtwo));}}
else{$importtwo="UPDATE `equipment` SET `type`='',`model`='$data[11]',`date_create`='$newdate_create',`serial_number`='$data[12]',`date_of_sealing`='', `seal_number`='',`state`=''";$res_importtwo=mysql_query($importtwo) or die(mysql_error($res_importtwo));}
$sqlimport_meter_reading="SELECT * FROM `meter_reading` WHERE `value` = '$data[14]' AND `period`='$newperiodmeter_reading' AND `idn`='$data[2]'";
$resimport_meter_reading=mysql_query($sqlimport_meter_reading);
if(!$resimport_meter_reading||mysql_num_rows($resimport_meter_reading)<1)
{if($data[10]=='1'&&$data[13]!=''){$importtree="INSERT INTO `meter_reading`(`idn`, `period`, `value`, `pay_type`) VALUES ('$data[2]', '$newperiodmeter_reading', '$data[14]', '$data[10]')";$res_importtree=mysql_query($importtree) or die(mysql_error($res_importtree));//$error3.=mysql_error($res_import3);
}}
$sql="SELECT * FROM `user_info` WHERE `account` = '$data[2]'";
$res=mysql_query($sql);
if(!$res||mysql_num_rows($res)<1)
{$importfour="INSERT INTO `user_info`(`fio`, `account`, `living_space`, `occupancy`, `adress`, `telefone`, `mobile`, `email`, `icq`, `password`, `password_temp`, `status`) VALUES ('".mysql_real_escape_string($data[3])."', '$data[2]', '', '', '$data[4]', '', '', '', '', '', '', 'user')";}
else{$importfour="UPDATE `user_info` SET `fio` = '$data[3]', `adress` = '$data[4]' WHERE `account` ='$data[2]'";}
$res_importfour=mysql_query($importfour) or die(mysql_error($res_importfour));//$error4.=mysql_error($res_import4);*/
}$i++; echo $i.'<br>';
}


скрипт обрабатывает файл до 2187 строки и останавливается,
т.е. просто пишет цифры в ряд до 2187:
1
2
3
....
2187

а почему понять пока не могу...
кто знает в чем может быть причина?

P.S.: смотрел логи сервера, ошибок нет.
P.P.S.: код конечно слишком накрученный, но по-другому никак...
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (2) [1] 2  Ответ в темуСоздание новой темыСоздание опроса