Formularversand mit html/javascript per email?
Domi
- javascript
0 David Tibbe0 Domi0 David Tibbe0 Domi0 David Tibbe
Hallo
Bin noch n ziemlicher html / JavaScript Newbie und hoffe ihr könnt mir helfen. ;)
Ich bräuchte ne (Internet-)Seite oder n Quellcode (oder ne Dokumentation) für den Versand der in einem html Formular erfassten Daten per Email. Ist sowas möglich? Das html Formular ist zuständig für Infos von Personal, dass die Abteilung wechselt an die zuständige Person zu schicken..
Hab hier schon mal etwas rumgeschaut und gelesen man soll einen Serverdienst mit CGI machen, dass ist hier aber nicht möglich.
Ach ja die zu erfassenden Daten befinden sich in 2 Frames (wenn dies zu schwierig wird muss ich das in 1 Frame basteln, auch ok).
Auch möglich wäre, wenn das Formular die Daten in einer txt Datei abspeichert (...und dann evtl. versendet).
Danke für eure Hilfe!
Hallo
Du kannst (wenn das ganze nur lokal bei dir von ein par Rechnern laufen soll),
das ganze mittels eines "mailto-Formulares" erledigen. Voraussetzung dafür
ist aber, dass auf allen Rechnern ein Mailclient installiert und kofiguriert
ist (deswegen mache das auch nur, wenn das lokal irgendwo bei euch im Betrieb ist,
sowas ist nichts fürs große Netz). Wie das geht steht in SelfHTML.
mit CGI
Es geht auch jede andere serverseitige Programmiersprache.
befinden sich in 2 Frames
Auch hier: Du kannst die Daten aus den Frames sammeln und mit JS zusammen packen. Allerdings auch wieder nur, wenn das ganze nur auf deinem Rechner
mit 100pro aktiviertem JS läuft.
die Daten in einer txt Datei abspeichert
Jetzt brauchst du wirklich etwas Serverseitiges ;)
Grüße
David
befinden sich in 2 Frames
Auch hier: Du kannst die Daten aus den Frames sammeln und mit JS zusammen packen. Allerdings auch wieder nur, wenn das ganze nur auf deinem Rechner.
und mit was für einem Befehl sammel ich die Daten aus 2 Frames? :)
Hallo Domi
und mit was für einem Befehl sammel ich die Daten aus 2 Frames? :)
Mit den dir bekannten, im Prinzip genauso, wie du es auch "dokumentintern"
machst. Es steht sogar in SelfHTML ;)
http://selfhtml.teamone.de/javascript/objekte/frames.htm
Grüße
David
Hallo Domi
und mit was für einem Befehl sammel ich die Daten aus 2 Frames? :)
Mit den dir bekannten, im Prinzip genauso, wie du es auch "dokumentintern"
machst. Es steht sogar in SelfHTML ;)
http://selfhtml.teamone.de/javascript/objekte/frames.htm
Hallo nochmal
Also ich hab mir den Link mal angeschaut, kommejetzt aber nicht mehr weiter. Ich habe 3 Frames in Frame 1 (Eingabe) und 2 (Telefon) wird etwas in einem Formular eingegeben und im 3. Frame in einer Leiste nochmal zu Kontrolle ausgegeben, mit den Daten aus dem 1. Frame klappt es. Beim 2. Frame gibts eine Fehlermeldung.
<button type="reset">RESET</button>
<button name="combine" onClick="javascript:Combine()">Zusammenstellen</button>
</form>
<script type="text/javascript">
function Combine()
{
parent.Unten.document.output.OutputFeld.value = document.Eingabe.Anrede.value + ' ' + document.Eingabe.Vorname.value + ' ' + document.Eingabe.Name.value + ' zieht in der Abteilung ' + document.Eingabe.Abt.value + ' in Raum Nr. ' + document.Eingabe.neuRaumNr.value + ' '+ document.Telefon.neuTel.value + '.';
}
</script>
Unten ist der 3. Frame mit der Ausgabezeile output. Zurzeit sagt mir mein IE, dass document.Telefon.neuTel.value kein Objekt wäre. Muss ich den 2. Frame noch genauer bezeichnen oder sowas?
Hallo Domi,
Aus deiner Beschreibung shcließe ich, dass du ein Frameset der Art:
|-------------------|
Eingabe + Button |
---|
Telefon |
------------------- |
Output |
------------------- |
hast. Wenn du auf den Button klickst, so greifst du schon richtig auf den
Output-Frame zu (beim Schreiben). Nicht aber auf den Telefon, dort versuchst
du das ganze geau wie in "Eingabe" ausgzulesen. Du musst zuvor noch wie bei
der Ausgabe ein parent.Telefon. Du musst ja von dem Frame "Eingabe" zuerst
eine Ebene höher (parent) und dann in den Frame (Telefon) gehen.
<button name="combine" onClick="javascript:Combine()">
Das mit javascript: davor, das meinst du nicht ernst oder?
Grüße
David
Hi David,
Vielen Dank nochmal für die bisherige Hilfe.
Aus deiner Beschreibung shcließe ich, dass du ein Frameset der Art:
|-------------------|
Eingabe + Button Telefon ------------------- Output -------------------
ja genau so schauts aus.
Du musst zuvor noch wie bei der Ausgabe ein parent.Telefon. Du musst ja von dem Frame "Eingabe" zuerst
eine Ebene höher (parent) und dann in den Frame (Telefon) gehen.
Das habe ich auch gerade selbst herausgefunden.
<button name="combine" onClick="javascript:Combine()">
Das mit javascript: davor, das meinst du nicht ernst oder?
Öhm, ich habe das einfach so übernommen, da ich an einer angefangenen Seite arbeite und es so gefunzt hat. Mich hats auch schon gewundert, dass es da so stehen soll. Wie gesagt ich habe erst vor ein paar Tagen angefangen mit html/Javascript und meine Kenntnisse hauptsächlich mit Selfhtml erworben.
MfG Domi
Ich hab noch ne Frage, ich könnte doch jetzt die in der untersten Ausgabezeile (output) stehenden Daten nun per Email verschicken können (um auf mein Hauptproblem zurück zukommen)?
MfG Domi
Hallo Domi
ich könnte doch jetzt die Daten per Email verschicken
Dem ist so :)
Es gibt da ja die Methode submit(), die du dann abschließend nur noch
aufrufen musst. Als action hast du dann wie gesagt mailto:email@adresse.tld.
Wie ich aber anfangs schon erwähnte, mache das alles nur, wenn du dich auf
JS und Mailclient verlassen kannst.
Grüße
David