Joomla 1.0 Не работает fwrite в модуле.

Discussion in 'Создание расширений для Joomla' started by N1kolay, May 17, 2010.

  1. Offline

    N1kolay Недавно здесь

    Joined:
    Oct 29, 2008
    Messages:
    3
    Likes Received:
    0
    Gender:
    Male
    Здравствуйте уважаемые.

    Есть функция для генерации подписи. Сделал простенький модуль в котором она используется. Если использовать ее не в дужмле, то все работает, в составе модуля никак. Насколько я понял ob_start() который используется для формирования контента не дает нормально работать fwrite. Пробовал использовать ob_end_clean() и ob_clean(), только пропадает весь буферизированный контент, а функция все равно не выполняется.
    Код (PHP):
    1. // ФУНКЦИЯ ФОРМИРОВАНИЯ ПОДПИСИ
    2. // На входе: строка для подписи. На выходе: строка с результатом подписывания
    3. function _GetSign($inStr) {
    4.     global $Path_Folder, $Path_Signer;
    5.     chdir($Path_Folder);
    6.     $descriptorspec = array(
    7.     0 => array("pipe", "r"),
    8.     1 => array("pipe", "w"),
    9.     2 => array("pipe", "r") );
    10.     $process = proc_open($Path_Signer, $descriptorspec, $pipes);
    11.     fwrite($pipes[0], "$inStr\004\r\n");
    12.     fclose($pipes[0]);
    13.     $s = fgets($pipes[1], 133);
    14.     fclose($pipes[1]);
    15.     $return_value = proc_close($process);
    16.     return $s;
    17. }
     
  2.  
  3. Dead Krolik
    Offline

    Dead Krolik Недавно здесь => Cпециалист <=

    Joined:
    Apr 13, 2007
    Messages:
    3,685
    Likes Received:
    101
    Gender:
    Male
    Я может чего не понял, но в чем суть использования proc_* функций для формирования подписи?
     
  4. Offline

    N1kolay Недавно здесь

    Joined:
    Oct 29, 2008
    Messages:
    3
    Likes Received:
    0
    Gender:
    Male
    proc запускает консольное приложение wmsigner. Оно как я понял как раз и занимается созданием подписи, используя файл kwm ключа от веб-мани.
     
  5. Dead Krolik
    Offline

    Dead Krolik Недавно здесь => Cпециалист <=

    Joined:
    Apr 13, 2007
    Messages:
    3,685
    Likes Received:
    101
    Gender:
    Male
    А это необходимо делать именно в модуле? Может просто в модуле написать яваскрипт, вызывать аякс на компонент, а он уже делает proc_open.
     
  6. Offline

    N1kolay Недавно здесь

    Joined:
    Oct 29, 2008
    Messages:
    3
    Likes Received:
    0
    Gender:
    Male
    Наверное так и придется сделать. Не охота было с аяксом разбираться :)
     

Share This Page

Loading...