Entwickler-Ecke

Internet / Netzwerk - CGI Anwendungen !


Jagg - Mo 15.07.02 16:55
Titel: CGI Anwendungen !
Hallo !
Kann mir jemand eine BeispielCode für CGI Anwendungen geben ?
Was muss ich nehmen unter dem Menü "Neu" !
Da sind ja viele Sachen z.B. Formular und Konsolenanwedung !

Jagg !


DeCodeGuru - Mo 15.07.02 18:18

Hi Jagg,

du nimmst am besten die Konsolenanwendung. Hier habe ich nen kleinen Codeschnipsel, mit dem du Text ausgeben kannst:


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
program cgitest;

{$APPTYPE CONSOLE}

uses
  SysUtils;

begin
  writeln( 'Content-type: text/html' );
  writeln;
  writeln( '<H1>Das ist nur eine kleine Textausgabe, die mit HTML-Tags formatiert wurde!!!<H1>' );
end.


Wenn du wissen willst, wie man Daten einliest (also Parameter auswertet), würde ich dir empfehlen mal im Forum zu suchen.


Jagg - Mo 15.07.02 18:34

Danke,seh ich das jetzt richtig,das man den Text auch in HTML einbinden kann ? Also,in den Quelltext schreiben ?
Ich habe da eine HTML-Oberfläche,das ein E-Mail Formular dastellt und ich will das es genau das ausführt,was bei einer "Mailing" alles hinzugehört,also (Versenden usw.),und das kann ich alles in einer KonsolenAnwendung in Delphi als CGI Schreiben ???

Wenn "JA",wie teste ich das,bevor ich es ins Netzt stelle ?

Jagg !


DeCodeGuru - Mo 15.07.02 18:43

Hi nochmal,

also dein Problem habe ich erstmal nicht so richtig verstanden, aber du kannst einen kompletten HTML-Code ausgeben lassen. Das ist nicht das Problem.

Um deine Programm zu testen, brauchst du einen Webserver, den du bei dir installierst. Ich würde dafür Apache nehmen. Also, den habe ich wenigstens drauf. Aber es gibt natürlich alternativen.

Ein Tutorial zur Einrichtung findest du hier [http://www.i-netlab.de/apache/apache.htm#a0]


Alfons-G - Mo 15.07.02 18:49

Eine CGI-Anwendung wird vom Browser des Anwenders aufgerufen (HTTP-Request). Darauf muss das CGI-Programm antworten (HTTP-Response).

Diese Antwort ist meistens ein HTML-Text, wie im Beispiel. Es kann aber auch z.B. eine GIF-Grafik sein (Diagramm o.ä.), welche vom CGI-Programm erzeugt wird. Der HTTP-Header, hier Content-type: text/html sagt dem Browser, dass er die Daten in diesem Fall als HTML interpretieren soll.
Würde hier z.B. text/plain stehen, würde der Browser den HTML-Quelltext anzeigen. Genauso ist image/GIF, application/msword usw. möglich.

Um größere Mengen HTML-Text zu erzeugen, empfiehlt sich der Einsatz eines oder mehrerer PageProducer. Diese Komponente wird ab der Professional Version mitgeliefert. Es gibt aber auch Freeware-Producer. Eine genaue Erläuterung würde an dieser Stelle zu weit führen.

:idea:
Testen kannst Du CGI-Anwendungen, wenn Du Dir auf Deinem Rechner den Personal Webserver installierst. Dieser ist bei Windows dabei (Bei XP nur ab Professional). Ansonsten empfiehlt sich Apache.

Bevor Du ein CGI ins Netz stelst, musst Du auch klären, wie bei Deinem Provider die Voraussetzungen dafür sind.

:)


damadmax - Di 16.07.02 01:28

gibt es überhaupt provider, die es erlauben eine eigene ausführbare exe oder dll hochzuladen?

ich würde eher zu php oder asp greifen. was auch wesentlich einfacher ist!


Alfons-G - Di 16.07.02 10:07

Diverse Provider geben an, dass bei den entsprechenden Tarifen freie CGIs erlaubt sind, da gehen CGI- und WinCGI-Programme. Allerdings muss der Server dann unter Windoof laufen. Für Apache unter Linux kann man mit Kylix CGI-Anwendungen erstellen.

Was kaum ein Provider gestattet, ist der Einsatz von ISAPI-DLLs, was ohnehin nur mit dem MS IIS möglich ist. Das Programm hat dann alle Rechte des Servers und das erlauben Provider nur, wenn man einen dedicated server mietet.

PHP geht bei den meisten Providern, welche Apache einsetzen, allerdings nicht bei den Einstiegstarifen. ASP ist beim MS IIS Standard.

:idea:


Klabautermann - Di 16.07.02 10:44

Hi,

damadmax hat folgendes geschrieben:
gibt es überhaupt provider, die es erlauben eine eigene ausführbare exe oder dll hochzuladen?


ich habe versucht, das mit Jagg zu klären. Er ist der Meinung er dürfte es bei seinem Provider, ich habe da meine Zweifel. Genaueres könnt ihr hier [http://www.auq.de/viewtopic.php?t=560] nachlesen.

Gruß
Klabautermann


Jagg - Fr 19.07.02 10:24

Hallo !
Mein freund hat einen eigenen webserver zu hause !
WIe binde ich den jetzt Delphi ich weiss das ich eine konsolenanwendung haben muss,muss das einen exe sein oder geht auch dll ???