| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Программирование под Unix/Linux > Сишная setenv и массивы _GET и _POST в PHP |
| Автор: exceilence 22.6.2009, 05:57 | ||
| Вопрос в следующем, как php интерпретатор заполняет массивы _GET и _POST? Как он узнает какие переменные куда положить? Какие переменные окружения я должен выставить, чтобы он мог их проанализировать и заполнить эти массивы? Пишу HTTP-сервер и это проблему решить не могу. Надеюсь кто-нибудь из стриков подскажет. В переменные окружения положил
|
| Автор: MAKCim 22.6.2009, 16:02 |
| тут надо либо доки php читать, либо эксперименты проводить например, запускаем трассировку апача (через strace) и делаем простой запрос на php'ый скрипт в логах смотрим, как он был вызван (что было передано в execve) |
| Автор: exceilence 26.6.2009, 03:15 |
| Ну что ж, пацанчики, Буду писать пока так, как написано в статье... может масивчики заполнит php интерпретатор: " При вызове CGI-программы все, что поступило в теле запроса, подается программе на стандартный ввод, а все, что находится в URL после вопросительного знака, помещается в переменную окружения QUERY_STRING. Веб-сервером данные запроса никак не интерпретируются и не преобразуются, эти задачи возложены на CGI-программу. CGI-программа выдает содержимое ответа (как правило, HTML-контент) на свой стандартный вывод, который перехватывается веб-сервером с тем, чтобы отослать эти данные клиенту. Предварительно CGI-программа должна напечатать заголовок "Content-Type" и отделить его от данных пустой строкой. Например, вывод CGI-программы, генерирующей HTML, может выглядеть следующим образом: Content-Type: text/html <HTML> <BODY> <H1>Hello, world</H1> </BODY> <HTML> " Путного ничего более не нашёл. Если узнаю как всё же он заполняет массивы - напишу... есть бредовые предположения... Морковным цветом напсано, что сервер никаким боком не трогает POST данные. И при этом просто подаёт на стандартный ввод программе. Но! Как интерпретатор успевает заполнить массив? Я не писал ниодного скрипта на php, которая бы читала со стандартного ввода, хотя потенциально есть у него такая возможность. Может интерпретатор и пользуется этим и всё съедает сам? Вот такие пироги для размышления. |