![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Web приложение [D6, XP]
tomkat © (2008-08-11 13:59:00)Hi, All ! Не подскажет ли кто, с чего начать решение сл. задачки :
необходимо реализовать запрос к базе FireBird с WEB броузера, имеется web сервер Apache2, толком в нем не разбираюсь.. Насколько я понял, необходимо 3 звено, к-е будет посылать запросы к SQL серверу и отдавать Apache ? Просьба ногами сразу не бить ! Заранее спасибо !
Ega23 (2008-09-18 08:28:00) [1]
> Ну, если Apache, то php
можно вообще без всяких php. И даже без каких-либо модов. Голый апач + cgi. А на чём написана cgi - это вопрос к разработчику. Хоть на вижуал басике.
(2008-09-18 07:45:00) [2]Удалено модератором
(2008-08-18 03:56:00) [3]Удалено модератором
Anatoly Podgoretsky (2008-08-13 00:49:00) [4]> stas (12.08.2008 21:59:20) [20]
Только Дельфи
stas (2008-08-12 23:17:00) [5]
> имеется web сервер Apache2, толком в нем не разбираюсь.
Сергей М. (2008-08-12 22:14:00) [6]
> если Apache, то php
Да с какого боку тут вообще Апач ?
Автор спросил
> к базе FireBird с WEB броузера
Апач знать не знает ни про какие FB и иже с ними - он Web-сервер, а не SQL-сервер)
stas (2008-08-12 21:59:00) [7]Игорь Шевченко © (12.08.08 17:53) [18]
Согласен.
Ну, если Apache, то php
Плохиш (2008-08-12 19:26:00) [8]
> stas © (12.08.08 17:45) [16]
> Плохиш © (12.08.08 17:30) [10]
>
> > 2 сайта для оформления страховых договоров пойдут?
>
> нет конечно
Собственно, другого и не ожидалось...
Игорь Шевченко (2008-08-12 17:53:00) [9]
> Зачем изучать как сделать это на Delphi, когда проще и полезнее
> изучить php.
Проще и полезнее изучать ASP.Net
stas (2008-08-12 17:47:00) [10]stas © (12.08.08 17:45) [16]
> Игорь Шевченко © (12.08.08 17:39) [15]
> Зачем изучать как сделать это на Delphi, когда проще и полезнее
> изучить php.
Это мое субъективное мнение.
stas (2008-08-12 17:45:00) [11]Плохиш © (12.08.08 17:30) [10]
> 2 сайта для оформления страховых договоров пойдут?
нет конечно
Ega23 ©
Проблематично менять дизайн и настраивать тоже.
Игорь Шевченко © (12.08.08 17:39) [15]
Зачем изучать как сделать это на Delphi, когда проще и полезнее изучить php.
Ega23 (2008-08-12 17:39:00) [12]Стоп. в [11] недоделано. Это из бэкапа прототип был взят.
Там ещё CoInitialize и CoUninitialize надо добавить, и writeln для StringList-а.
Игорь Шевченко (2008-08-12 17:39:00) [13]
> Вы где нибудь встречали профессиональные вэб сайты написанные
> на Delphi?
а где в вопросе автора речь о профессиональных веб-сайтах ?
han_malign (2008-08-12 17:38:00) [14]
> Написать, то можно. Вы где нибудь встречали профессиональные
> вэб сайты написанные на Delphi?
- поддержка хостером Win32-CGI встречается, как минимум, не реже чем поддержка PHP/Java/etc. сервлетов...
Ega23 (2008-08-12 17:37:00) [15]
> Написать, то можно. Вы где нибудь встречали профессиональные
> вэб сайты написанные на Delphi?
А какая к дьяволу разница, на чём написан cgi????
Ega23 (2008-08-12 17:35:00) [16]Надо написать что-то, что на WEB-сервере будет транслировать твой http-запрос в базу и формировать http-ответ.
Например - CGI-программу.
Пример - в демосах. Или вот, самый простой:
program mssql_test;
{$APPTYPE CONSOLE}
{$E cgi}
uses
SysUtils,
Classes,
uMSSQLData in 'uMSSQLData.pas';
var
List : TStringList;
Data : TMSSQLData;
begin
WriteLn('content-type: text/html');
WriteLn;
List := TStringList.Create;
Data := TMSSQLData.Create;
try
Data.GetData(List);
finally
Data.Free;
List.Free;
end;
end.
unit uMSSQLData;
interface
uses SysUtils, Classes, DB, ADODB;
type
TMSSQLData = class
private
Connection : TADOConnection;
DataSet : TADODataSet;
procedure CreateHeader(List : TStrings);
procedure CreateFooter(List : TStrings);
public
constructor Create;
destructor Destroy; override;
procedure GetData(Result : TStrings);
end;
implementation
{ TMSSQLData }
//*****************************************************************************
constructor TMSSQLData.Create;
begin
DataSet := TADODataSet.Create(nil);
DataSet.CommandText := 'Select * from BusinessActions';
Connection := TADOConnection.Create(nil);
Connection.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sline;Initial Catalog=SLUSR;Data Source=DEV_PC';
DataSet.Connection := Connection;
end;
//*****************************************************************************
procedure TMSSQLData.CreateFooter(List: TStrings);
begin
List.Add('</BODY></HTML>');
end;
//*****************************************************************************
procedure TMSSQLData.CreateHeader(List: TStrings);
begin
List.Add('<HTML><HEAD><TITLE>MSSQL Data Test</TITLE></HEAD><BODY>');
end;
//*****************************************************************************
destructor TMSSQLData.Destroy;
begin
DataSet.Free;
Connection.Free;
inherited;
end;
//*****************************************************************************
procedure TMSSQLData.GetData(Result: TStrings);
begin
CreateHeader(Result);
try
Connection.Connected := True;
with DataSet do
begin
Open;
Result.Add('<TABLE>');
while not Eof do
begin
Result.Add('<TR>' + FieldByName('BANam').AsString + '</TR>');
Next;
end;
Result.Add('</TABLE>');
end;
except on E : Exception do
begin
Result.Add('Ошибка получения данных');
Result.Add(E.Message);
end;
end;
CreateFooter(Result);
end;
//*****************************************************************************
end.
Плохиш (2008-08-12 17:30:00) [17]
> Вы где нибудь встречали профессиональные вэб сайты написанные
> на Delphi?
Если приведёшь критерии для "профессиональные вэб сайты"...
2 сайта для оформления страховых договоров пойдут?
stas (2008-08-12 16:57:00) [18]Anatoly Podgoretsky ©, Плохиш © (12.08.08 12:59)
Написать, то можно. Вы где нибудь встречали профессиональные вэб сайты написанные на Delphi?
Anatoly Podgoretsky
Почему же вы свой не написали на Delphi?
Сергей М. (2008-08-12 13:04:00) [19]
> запрос к базе FireBird с WEB броузера
А Апач тут причем ?
http-запрос и sql-запрос - две разные разницы ...
Плохиш (2008-08-12 12:59:00) [20]
> Alucard (12.08.08 01:23) [4]
> На делфи нельзя.
Шёл бы ты, запретитель, куда подальше...