asphelper.de - Tipps & Skripts - Ein Kontaktformular

Link: Wichtiger Hinweis in eigener Sache!


 Autor: Klaus Keller Erstellt am: 2002-10-31  Geändert am: 2005-01-16 Aufrufe: 22578 


 << Vorheriger Tipp Nächster Tipp >>



Tipp 20: Ein Kontaktformular



Inhalt dieser Seite:


Einführung
Eine Nachricht an einen Betreiber an eine Seite senden, daß ist die wesentliche Aufgabe einer Kontaktseite. Die Möglichkeit, daß eine Nachricht eines Besuchers nicht nur an eine Email-Adresse gesendet wird, sondern an mehrere, ist eine Zusatzfunktion.

Ein Administrator-Bereich, in dem man sowohl online die versendeten Nachrichten einsehen kann wie auch Antworten auf die Nachrichten sehen kann, rundet eine gute Kontaktseite ab. Eine leichtere Administration wird dadurch erreicht, daß die Einstellungen einfach vorgenommen werden können. Das hier vorgestellte Kontaktformular bietet all diese Eigenschaften. Im wesentlichen hat diese Projekt 2 Bereiche, die öffentliche Kontaktseite und der administrative Bereich.


Der öffentliche Bereich
Der Öffentliche Bereich besteht natürlich aus einer Seite, in dem der Besucher seine Nachricht absenden kann. Allerdings besteht die Möglichkeit, dem Besucher eine Wahl für den Empfänger einzurichten. So kann zum Beispiel vom Besucher festgelegt werden, daß die Nachricht an den Verkauf oder den Webmaster gesendet werden soll.Die Empfänger sind durch den Administrator per Einträge in der Datenbank einstellbar.


Der administrative Bereich
Der Administrative Bereich bietet einen Überblick über alle zugesandten Meldungen, dabei werden alle Meldungen angezeigt, der Text allerdings nur in gekürzter Ansicht, bei jedem Eintrag ist ein Link für ein Detailansicht in welcher auch der Text in ungekürzter Ansicht dargestellt wird. In dieser Detailansicht steht auch ein Formular zur Verfügung, in der eine Antwort auf die Nachricht gesendet werden kann.


Installation
Die Installation ist sehr einfach. Der Download beinhaltet 3 Ordner, ~db, ~include und admin, dazu gibt es noch eine Datei namens Kontakt.asp und eine Style.css. Es gibt noch mehrere Stylesheet-Dateien die aber nicht benötigt werden, es handelt sich dabei lediglich um Farbvariationen die Sie sowohl für den öffentlichen wie auch für den Administrativen Bereich einsetzen können.

Die Kontakt.asp mitsamt der Stylesheet-Datei und den Unternordnern können Sie z.B. in das Hauptverzeichnis für das gewünschte Projekt kopieren. Sollten Sie bereits einen Ordner für Datenbanken haben, können Sie natürlich die Datenbank dort reinkopieren. Ein wichtiges Highlight von diesem Kontaktformular ist die Möglichkeit, unterschiedliche Datenbank einzusetzen. Getestet wurde die Kontaktseite mit Microsoft Access, Microsoft MSDE, Microsoft SQL-Server und MySQL.

Rufen Sie nun als erstes die Datei "Pfad.asp" im Verzeichnis ~include auf. Dort sehen Sie ein Prozedur GetStrConn, dort wird der Datenbank-Pfad zugewiesen. Standardmässig ist ein Access-Treiber aktiviert, aber es wurde bereits ein Treiber für MySQL und ein Treiber für Microsoft MSDE und den Microsoft SQL-Server eingetragen. Die anderen Treiber wurden jedoch auskommentiert. Falls Sie einen anderen Namen als "~db" für das Datenbank-Verzeichnis verwenden, weisen Sie den Ordnernamen an die Variable "MyStrConn" zu.

Möchten Sie statt einer Access-Datenbank eine MySQL-Datenbank verwenden, so können Sie dies natürlich tun. Natürlich müssen dafür Tabellen angelegt werden. Dies können Sie entweder per Hand erledigen, verwenden Sie dazu die Access-Datenbank als Referenz, oder mit den beigefügten SQL-Dateien. Dazu kopieren Sie den Text aus diesen Dateien in das MySQL-Control-Center oder ein äquivalentes Programm. Die beigefügten SQL-Dateien beinhaltet nicht nur das erstellen der benötigten Tabellen sondern auch Anweisungen für das Einfügen verschiedener Datensätze z.B. in die Tabelle "tblSetting".

Nachdem Sie die Frage der Datenbank-Verbindung gelöst haben, geht es nun daran, die Einstellungen zu ändern. Rufen Sie dazu bitte in der Datenbank die Tabelle tblSetting auf. Nachfolgend eine kurze Erklärung der Einstellmöglichkeiten:
NameErklärung
Kontakt_ShowEmpfaengerSoll bei der öffentlichen Seite dem Besucher die Möglichkeit gegeben werden, einen Empfänger auszusuchen? Wenn ja geben Sie hier "true" an, ansonten "false". Beachten Sie hierbei bitte die Groß- und Kleinschreibung.
DefaultDateTypeWann wurde ein Kontakt abgesendet? Das Datumsformat dafür kann festgelegt werden. Hierzu wird übrigens die Funktion GetDate aus Tipp 9: Datumsformatierung eingesetzt. 1 repräsentiert das ISO-Format (yyyy-mm-dd), 2 = ME-Format (dd.mm.yyyy) und 3 das englische/US-Datum (mm/dd/yyyy).
Kontakt_Admin_PageSizeWieviele Kontakte sollen je Seite im Administrationsbereich angezeigt werden? Geben Sie hier eine Zahl von grösser 1 an.
Default_Domain_EmailAddressFalls der Besucher keinen Empfänger auswählen kann oder bei einer Auswahlmöglichkeit keine Auswahl getroffen hat kann hier die Standard-Email-Adresse angegeben werden, geben Sie dazu bitte eine valide Email-Adresse an.
Default_Domain_EmailNameÄhnlich wie Default_Domain_EmailAddress, nur statt einer Email-Adresse eben der Name.
MailerTypeHier wird festgelegt, welches Mailprogramm auf dem Server die Email versenden soll. Angegeben werden kann: "SMTPsvg.Mailer", "JMail.SMTPMail" und "CDO.Message". Falls Sie eine andere Software einsetzen, schreiben Sie dazu den gewünschten Quellcode in die Datei "inc_Email.asp" im Verzeichnis ~include, setzen Sie diesen Quellcode in die Select-Case-Anweisung, geben Sie aber dazu einen anderen Namen, z.B. so:
Case "SMTP.TestMailer"
Darunter setzen Sie dann den Quellcode für den Emailversand. Bei der Verwendung der Variablen richten Sie sich bitte an den bereits vorhandenen Quellcode. Dann setzen Sie den Wert aus der Case-Anweisung in die Datenbank: SMTP.TestMailer (Ohne Anführungsstriche!), beachten Sie dabei bitte die Groß- und Kleinschreibung.
Email_ServerAddressDiese Adresse muss für den Emailversand angegeben werden. Sollte Ihnen diese Adresse nicht bekannt sein, sehen Sie auf den Seiten Ihres Webhosters nach.
DomainNameDer Domainname wird z.B. dann verwendet, wenn Sie eine Email Ihrer Kontaktseite erhalten, dann steht darin z.B.:
asphelper.de: Kontakt vom 10.01.2005, Name: Otto
Kontakt_EmailAddress und Kontakt_EmailNameDiese sind für zukünftige Aufgaben bestimmt.


Die Installation des Öffentlichen Bereichs ist soweit fast fertig, Eventuell möchten Sie das hier vorgestellte Kontaktformular in eine Seite mit einem anderen Design oder anderen Elementen einbinden. Der Anfang und das Ende der Seite wurde jeweils in eine Prozedur ausgelagert. Diese Prozeduren finden Sie in der Datei html_utils.asp im Verzeichnis ~include. Der HTML-Anfang wird in der Kontakt.asp durch diese Zeile aufgerufen:
Call HTML_Header()

Möchten Sie nun eine andere Prozedur aufrufen, ändern Sie den Quellcode in dem Sie die gewünschte Prozedur aufrufen. Natürlich können Sie auch statt eine Prozedur aufzurufen eine Datei inkludieren. Das Ende des HTML-Codes wird in dieser Zeile aufgerufen:
Call HTML_Footer()


Möchten Sie den HTML-Code für den Anfang und dem Ende der Seite direkt im vorhandenen HTML-Code verändern, so rufen Sie dazu die html_utils.asp auf.

Der Administrative Bereich ist eigentlich auch schon beinahe fertig, was noch fehlt ist ein Login, denn mit dem aktuellen Quellcode kann jeder die Seite aufrufen, was natürlich nicht unbedingt erwünscht ist. Wenn Sie einen Login einbauen möchten, rufen Sie zuerst die Kontakt.asp im Verzeichnis admin auf. Die mögliche Login-Funktion setzen Sie idealerweise vor der Variablendeklaration in der Seite ein. Falls Sie noch keinen Login-Bereich haben, so erstellen Sie einfach einen, ein Beispiel dafür gibt es in Tipp 17: Login bzw. Geschützter Bereich. Viel Glück und: Ich wünsche Ihnen viele gute Nachrichten!


Herunterladen: Tip20.zip


 << Zum vorherigen Tipp 19:
Alle Tabellen einer Datenbank anzeigen

 Zum nächsten Tipp 21 >>
Umrechnung Oktal nach Dezimal

top top
© Copyright By Klaus Keller, 2001-2008 - Alle Rechte vorbehalten.