Вот моя проблема:
на моем сервере есть скрипт php, который отправляет электронное письмо.
Мой скрипт работает нормально, и я могу запустить его из командной строки:
$ php5-cgi /var/www/cgi-bin/send_email.php sujet,texte
но скрипт php должен быть вызван другой программой на языке c (по электронной почте, если нужно …).
int main(){
system("php5-cgi /var/www/cgi-bin/send_email.php sujet,texte");
printf("ok");
return 0;}
Если я вызываю мою программу из командной строки:
$ /var/www/cgi-bin/envoi_email_test
это нормально, я получаю письмо.
Но если я вызываю мою c-программу с помощью «XMLHttpRequest ()» с кнопкой на одной из моих html-страниц, это не работает.
«Alert (xhr.responseText)» отображает:
*8CJ??P\i?? ?????0?`??T?????0? ??/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../arm-linux-gnueabihf/crt1.o$d$a/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../arm-linux-gnueabihf/crti.ocall_gmon_start/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../arm-linux-gnueabihf/crtn.ocrtstuff.c__JCR_LIST____do_global_dtors_auxcompleted.5637__do_global_dtors_aux_fini_array_entryframe_dummy__frame_dummy_init_array_entryenvoi_email_test.celf-init.oS__FRAME_END____JCR_END____init_array_end_DYNAMIC__init_array_start_GLOBAL_OFFSET_TABLE___libc_csu_finidata_startprintf@@GLIBC_2.4__bss_start___bss_end___edata_fini__bss_end____data_start__libc_start_main@@GLIBC_2.4system@@GLIBC_2.4__gmon_start____dso_handle_IO_stdin_used__libc_csu_init_end_start__end____bss_startmain_Jv_RegisterClassesabort@@GLIBC_2.4_init
и другой странный текст.
Я знаю, что моя программа работает, потому что, если я закомментирую строку //system("php5-cgi /var/www/cgi-bin/send_email.php sujet,texte");
, «alert (xhr.responseText)» отображает возврат printf из программы c.
Если у кого-то есть идея, чтобы помочь мне … заранее спасибо.
Задача ещё не решена.
Других решений пока нет …