Grannas
Участник
- Регистрация
- 27.02.2011
- Сообщения
- 1 830
- Реакции
- 10
- Баллы
- 38
Ситуация:
Необходимо через php перехватить пользовательскую сессию почтовой программы через COM объект и в рамках этой сессии сохранить письмо в почтовом ящике. Делается этот вот таким небольшим кодом:
В командной строке скрипт без проблем и ошибок выполняется (если запустить через "c:\Путь_к_php c:\Путь_к_файлу"), а вот при выполнении сего кода в браузере апач выдает 500 ошибку. В error.log сообщение нечитаемое ибо не настроена локаль, а лог пишется в cp1251. Апач и соответственно php запущен под тем же пользователем, что и то приложение, сессию которого нужно перехватить COM объектом.
Выдает того самого нужного юзера.
Вопрос: почему оно не работает через браузер?
Необходимо через php перехватить пользовательскую сессию почтовой программы через COM объект и в рамках этой сессии сохранить письмо в почтовом ящике. Делается этот вот таким небольшим кодом:
PHP:
<?php
$session = new COM( "Lotus.NotesSession" );$session->Initialize('Пароль пользователя');
echo "User: $session->CommonUserName <br>";
$db = $session->getDatabase( "Сервер пользователя", "Путь к почтовому файлу" );$mail = $db->CreateDocument();$form = $mail->AppendItemValue('Form', "Memo");$subject = $mail->AppendItemValue('Subject', "TestovoePismo");$sendto = $mail->ReplaceItemValue('SendTo', "Группа получателей");$body = $mail->CreateRichTextItem( "Body" );$bodytext = $body->AppendText( "Texttestovogopisma" );$save = $mail->Save(False, True);
$session = null;
?>
В командной строке скрипт без проблем и ошибок выполняется (если запустить через "c:\Путь_к_php c:\Путь_к_файлу"), а вот при выполнении сего кода в браузере апач выдает 500 ошибку. В error.log сообщение нечитаемое ибо не настроена локаль, а лог пишется в cp1251. Апач и соответственно php запущен под тем же пользователем, что и то приложение, сессию которого нужно перехватить COM объектом.
PHP:
<php
$a = exec("whoami");
echo $a;
?>
Вопрос: почему оно не работает через браузер?