Форум: "Базы";
Текущий архив: 2003.03.17;
Скачать: [xml.tar.bz2];
ВнизCGI + базы данных Найти похожие ветки
← →
phantom2040 (2003-02-26 09:13) [0]На сколько я понял в Delphi можно писать CGI сценарии, я как-то попробовал написать простейший типа Hello World, вроде все работает, значит возник такой вопрос нужно из сценария оращаться в базу данных с поиском или запросом, как это осуществить на практике, каким образом нужно обращаться к базе из CGI????
Кто нить сталкивался с такой проблемой???
А ну просто ужас как не хочется Perl учить, вчера блин за книжкой просидел, часа 2 пытался прочитать, блин нифига не понял, мутноватый язык
← →
vlad40 (2003-02-26 09:21) [1]А в чем проблема? С базой работаешь так же, как и в обычной аппликации. Главное, чтобы не было визуальных компонентов. Бери DataModule, ставь на него то, что тебе нужно, и работай спокойно.
← →
Delirium^.Tremens (2003-02-26 09:25) [2]
> На сколько я понял в Delphi можно писать CGI сценарии
В Delphi можно писать приложения, в которых реализован CGI - Common Gateaway Interface. Сценарии принято писать на скриптовых языках.
PHP для этой цели лучше заточен.
← →
phantom2040 (2003-02-26 09:26) [3]Да, после добавления Дата модуля, в разделе USES прописывается этот модуль в виде datamod in "datamod.pas" {data: TDataModule};
ладно это понятно, не понятно как сервер со всем этим будет работать, ведь модуль не компилится, а компилится только cgi форма проекта, и после водружения на сервер, и запуска кода 500 ошибка вылетает почему то????
← →
Соловьев (2003-02-26 09:32) [4]у меня все работает, как ты работаешь с базой, код пожалуйста.
← →
vlad40 (2003-02-26 09:33) [5]Честно говоря, не знаю, что ты имеешь в виду "cgi форма проекта". Формы в твоем проекте вообще быть не должно, форму надо удалить, иначе работать это не будет.
← →
Hawk2 (2003-02-26 10:00) [6]Актуальная тема, можно даже сказать наболевшая. Както месяца два назад я тоже задавал такой же вопрос и так не одного ответа не получил. Так что тебе phantom2040 повезло хоть чтото сказали, мне пришлось разбираться самому.
>vlad40 (26.02.03 09:21)
>А в чем проблема? С базой работаешь так же, как и в обычной >аппликации. Главное, чтобы не было визуальных компонентов. Бери >DataModule, ставь на него то, что тебе нужно, и работай >спокойно.
Как создать связь с базой это не проблема, ты бы лучьше подсказал как выводить данные в Explorer.
А тепер по теме. При создании CGI нужно открывать не обычный проэкт, а File->New->Web Server Application тогда не прийдется избавляться от формы и Делфи не цепляет лишние модули. А для вывода данных используй компоненты с закладки Internet.
← →
Geka (2003-02-26 10:13) [7]Создавать приложение надо как Hawk2 сказал, а данные еще можно ручками html код добавить, для таблиц метки <TABLE>, <TR> и <TD>. Все просто.
← →
vlad40 (2003-02-26 10:15) [8]А что ты имеешь в виду (Hawk2) "как выводить данные в Explorer"? Как передавать данные из броузера в CGI?
← →
phantom2040 (2003-02-26 10:27) [9]извеняюсь за то что употребил неправильное определение форма ее нет в приложении а вот его код
program prob;
{$APPTYPE CONSOLE}
{$E cgi}
uses
SysUtils,
datamod in "datamod.pas" {data: TDataModule};
var c: string;
begin
data.spr.Active:=true; data.spr.First;
c:=data.spr.fieldbyname("NAME").AsString;
WriteLn("Content-Type: text/html");
WriteLn;
WriteLn;
WriteLn("<HTML>");
WriteLn("<HEAD>");
WriteLn("<TITLE>Простейшее CGI приложение</TITLE>");
WriteLn("<META http-equiv="Content-Type" content="text/html;" +
" charset=windows-1251">");
WriteLn("</HEAD>");
WriteLn("<BODY>");
WriteLn("<H1>HELLO WORLD</H1>");
WriteLn("<H2>"+c+"</H1>");
WriteLn("</BODY>");
WriteLn("</HTML>");
end.
по идее в Експлорере должно выводиться первое поле первой записи таблицы, а сервер дает 500 ошибку, и как поступать со второй в uses???????
← →
Hawk2 (2003-02-26 10:59) [10]>А что ты имеешь в виду (Hawk2) "как выводить данные в Explorer"? Как передавать данные из броузера в CGI?
Нет как передавать данные из базы в броузер. Я вообще-то знаю, я имел ввиду раскажи человеку.
>phantom2040 © (26.02.03 10:27)
Так как ты пишешь, это немного корявый способ, в Делфи есть примеры написания cgi, там все сделано через PageProducer, очень удобно особенно если страница содержит много кода и с сопровождением проблем нет.
Если очень надо я могу выслать на мыло пример своей гостевой книги. Работает с БД Access.
← →
vlad40 (2003-02-26 12:29) [11]А ты попробуй поставить
data:=TDataModule.Create(Application);
перед обращением к data
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.03.17;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.008 c