Первая программа на C++ для web сервера, Apache.
Веб сервер это посредник между исполняемой программой и клиентом присоединившимся к к серверу. Простой вывод может быть в формате HTML и он будет отображаться у клиента в красивом окне браузера. Соответственно Вы можете использовать форматирование HTML для формирования элементов окна. Собственно я это хотел показать, ну и сразу как делать форму. В примере показано, как использовать метод GET для получение данных для отображения. http://loooo.ru/cgi-bin/gethtml?a=1111%20ddd---1111 #include #include using namespace std; int main(int argc, char **argv) { char *arg = argv[argc-1]; char buffer[256]; cout ﹤﹤ "Content-Type:text/html;charset=UTF-8" ﹤﹤ std::endl; cout ﹤﹤ endl; cout ﹤﹤ "\ \ \ Проверка test\ Hello, world! Проверка связи" ﹤﹤ endl; // for (int i =0; i ﹤ argc; i++) cout ﹤﹤ i ﹤﹤ ": " ﹤﹤ argv[i] ﹤﹤ endl; cout ﹤﹤ "getenv" ﹤﹤ endl; char* env_p = getenv("REQUEST_URI"); if (env_p﹥NULL) cout ﹤﹤ "\nREQUEST_URI " ﹤﹤ env_p ﹤﹤ endl; if ((env_p=getenv("PATH"))﹥NULL) cout ﹤﹤ "\nPATH Получилось " ﹤﹤ env_p ﹤﹤ endl; if ((env_p=getenv("REMOTE_ADDR"))﹥NULL) cout ﹤﹤ "\nREMOTE_ADDR " ﹤﹤ env_p ﹤﹤ endl; if ((env_p=getenv("REQUEST_METHOD"))﹥NULL) cout ﹤﹤ "\nREQUEST_METHOD " ﹤﹤ env_p ﹤﹤ endl; if ((env_p=getenv("QUERY_STRING"))﹥NULL) cout ﹤﹤ "\nQUERY_STRING " ﹤﹤ env_p ﹤﹤ endl; cout ﹤﹤ "" ﹤﹤ endl; cout ﹤﹤ "\n"; cout ﹤﹤ endl; }
Веб сервер это посредник между исполняемой программой и клиентом присоединившимся к к серверу. Простой вывод может быть в формате HTML и он будет отображаться у клиента в красивом окне браузера. Соответственно Вы можете использовать форматирование HTML для формирования элементов окна. Собственно я это хотел показать, ну и сразу как делать форму. В примере показано, как использовать метод GET для получение данных для отображения. http://loooo.ru/cgi-bin/gethtml?a=1111%20ddd---1111 #include #include using namespace std; int main(int argc, char **argv) { char *arg = argv[argc-1]; char buffer[256]; cout ﹤﹤ "Content-Type:text/html;charset=UTF-8" ﹤﹤ std::endl; cout ﹤﹤ endl; cout ﹤﹤ "\ \ \ Проверка test\ Hello, world! Проверка связи" ﹤﹤ endl; // for (int i =0; i ﹤ argc; i++) cout ﹤﹤ i ﹤﹤ ": " ﹤﹤ argv[i] ﹤﹤ endl; cout ﹤﹤ "getenv" ﹤﹤ endl; char* env_p = getenv("REQUEST_URI"); if (env_p﹥NULL) cout ﹤﹤ "\nREQUEST_URI " ﹤﹤ env_p ﹤﹤ endl; if ((env_p=getenv("PATH"))﹥NULL) cout ﹤﹤ "\nPATH Получилось " ﹤﹤ env_p ﹤﹤ endl; if ((env_p=getenv("REMOTE_ADDR"))﹥NULL) cout ﹤﹤ "\nREMOTE_ADDR " ﹤﹤ env_p ﹤﹤ endl; if ((env_p=getenv("REQUEST_METHOD"))﹥NULL) cout ﹤﹤ "\nREQUEST_METHOD " ﹤﹤ env_p ﹤﹤ endl; if ((env_p=getenv("QUERY_STRING"))﹥NULL) cout ﹤﹤ "\nQUERY_STRING " ﹤﹤ env_p ﹤﹤ endl; cout ﹤﹤ "" ﹤﹤ endl; cout ﹤﹤ "\n"; cout ﹤﹤ endl; }