Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Как одним скриптом вмешаться в работу другого?

Сообщения:  [1-10]   [11-18] 

 
 автор: Владимир55   (16.10.2009 в 13:19)   письмо автору
 
   для: Саня   (16.10.2009 в 10:24)
 

Попробовал с ИЕ.

Потребовала надстройку - установил. Разрешил запуск activex

Но на при работе на Денвере получаю сообщение:
Сведения об ошибке на веб-странице

Агент пользователя: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Pivim Multibar; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
штамп времени: Fri, 16 Oct 2009 09:07:44 UTC


Сообщение: Невозможно создание объекта сервером программирования объектов
Строка: 10
Символ: 1
Код: 0
URI-код: http://sin/2.php

Строка 10 содержит "<script>".

Однако на рабочем столе, а также на диске С скрипт работает! Вопреки всем мрачным прогнозам!

Осталось только как-то "уговорить" его выполнить свои функции на Денвере. Как бы это сделать?

  Ответить  
 
 автор: Саня   (16.10.2009 в 10:24)   письмо автору
 
   для: Владимир55   (16.10.2009 в 01:23)
 

Это возможно.
<script>
var fso = new ActiveXObject("Scripting.FileSystemObject");
var a = fso.CreateTextFile("c:\\testfile.txt", true);
a.WriteLine("This is a test.");
a.Close();
</script>

Как видите, используется activex. Поэтому работает только в IE.

  Ответить  
 
 автор: Николай2357   (16.10.2009 в 01:50)   письмо автору
 
   для: Владимир55   (16.10.2009 в 01:05)
 

>Как это понимать:
"Если не считать это:" ?

да никак... счетчик больно уж веселый был. А скрипт работает на денвере у меня. Хотел тоже поискать в чем затык, так нечего искать то...

  Ответить  
 
 автор: Владимир55   (16.10.2009 в 01:23)   письмо автору
 
   для: Trianon   (16.10.2009 в 01:12)
 

Покручу.

А еще такая идея - если создавать стоп-файл не средствами рнр, а скриптом JS?

К сожалению, я не знаю, как написать код создания такого текстового файла. Это сложно?

  Ответить  
 
 автор: Trianon   (16.10.2009 в 01:12)   письмо автору
 
   для: Владимир55   (16.10.2009 в 00:55)
 

Еще можно попробовать покрутить значение настройки MaxRequestsPerChild в файле
Z:\usr\local\apache\conf\httpd.conf

  Ответить  
 
 автор: Владимир55   (16.10.2009 в 01:05)   письмо автору
 
   для: Николай2357   (16.10.2009 в 01:00)
 

Как это понимать:
"Если не считать это:" ?

  Ответить  
 
 автор: Николай2357   (16.10.2009 в 01:00)   письмо автору
 
   для: Владимир55   (16.10.2009 в 00:55)
 

Как ни странно, у меня всё это отработало без изменений...
Если не считать это:
<?php 

    $adr 
"stop.txt" 
    
$file fopen($adr"w");      // открываем файл для перезаписи 
    
fputs($file"");             // записываем 
    
fclose ($file);             // закрываем файл 

    
for ($i=1$i <= 1000000$i++) 
    { 
        
$stop file_get_contents($adr); 

        if (
$stop == "stop") break; 
    } 

    echo 
$i;

  Ответить  
 
 автор: Владимир55   (16.10.2009 в 00:55)   письмо автору
 
   для: Trianon   (16.10.2009 в 00:41)
 

Получается, что неправильно я написал. Второй скрипт - он ведь должен исполняться мгновенно. А он висит долго, пока первый не закончит работу.

Или еще так.

Первый скрипт запускаю (а второй нет). И потом блокнотом делаю стоп-файл. Первый скрипт останавливается и выводится какое-нибудь промежуточное число, меньшее лимона.

  Ответить  
 
 автор: Trianon   (16.10.2009 в 00:41)   письмо автору
 
   для: Владимир55   (16.10.2009 в 00:36)
 

Вы сказали, что слово в файле появляется - значит второй (останавливающий) процесс запускается и исполняется.

  Ответить  
 
 автор: Владимир55   (16.10.2009 в 00:36)   письмо автору
 
   для: Trianon   (16.10.2009 в 00:12)
 

Для синхронизации любой способ сгодится. Я хотел через сессии - не получилось по той же причине, что и через файл. А чем база данных отличается? Если второй скрипт не запускается до завершения работы первого скрипта, то уже и неважно, какой код у второго скрипта. Ведь так?

Вот если бы был способ управлять приоритетом исполнения!
Или через рнр вызывать прерывание и как-то обрабатывать его вектор...

  Ответить  

Сообщения:  [1-10]   [11-18] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования