Formulare
Amateur
- javascript
0 Shadowcrow0 Amateur
0 Beat0 Amateur0 Dirk Dorweiler0 Beat
0 EKKi
Hallo,
ich bin ein Amateur und baue meine Seiten mit Dreamweaver auf. Nun habe ich ein Formular erstellt, dessen Code so ausschaut:
<script src="file:///C|/Dokumente und Einstellungen/PC/Anwendungsdaten/Adobe/Dreamweaver 9/Configuration/Temp/Assets/eam3D.tmp/SpryValidationTextField.js" type="text/javascript"></script>
<link href="file:///C|/Dokumente und Einstellungen/PC/Anwendungsdaten/Adobe/Dreamweaver 9/Configuration/Temp/Assets/eam3D.tmp/SpryValidationTextField.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td height="50" valign="middle"> </td>
</tr>
<tr>
<td width="197" valign="middle"><form action="" method="post" name="form1" id="form1">
<span id="sprytextfield1">
<label>
<input name="firma" type="text" class="Stil10" id="firma" size="38" />
</label>
</span>
</form></td>
</tr>
<tr>
<td valign="middle"><form action="" method="post" name="form2" id="form2">
<span id="sprytextfield2">
<label>
<input name="name" type="text" class="Stil10" id="name" size="38" />
</label>
</span>
</form></td>
</tr>
<tr>
<td valign="middle"><form action="" method="post" name="form3" id="form3">
<span id="sprytextfield3">
<label>
<input name="vorname" type="text" class="Stil10" id="vorname" size="38" />
</label>
</span>
</form></td>
</tr>
<tr>
<td valign="middle"><form action="" method="post" name="form4" id="form4">
<span id="sprytextfield4">
<label>
<input name="strasse" type="text" class="Stil10" id="strasse" size="38" />
</label>
</span>
</form></td>
</tr>
<tr>
<td valign="middle"><form action="" method="post" name="form8" id="form8">
<span id="sprytextfield9">
<label>
<input name="plz" type="text" class="Stil10" id="plz" size="5" />
</label>
</span>
</form></td>
</tr>
<tr>
<td valign="middle"><form action="" method="post" name="form5" id="form5">
<span id="sprytextfield6">
<label>
<input name="ort" type="text" class="Stil10" id="ort" size="38" />
</label>
</span>
</form></td>
</tr>
<tr>
<td valign="middle"><form action="" method="post" name="form6" id="form6">
<span id="sprytextfield7">
<label>
<input name="telefon" type="text" class="Stil10" id="telefon" size="38" />
</label>
</span>
</form></td>
</tr>
<tr>
<td valign="middle"><form action="" method="post" name="form7" id="form7">
<span id="sprytextfield8">
<label>
<input name="email" type="text" class="Stil10" id="email" size="38" />
</label>
</span>
</form></td>
</tr>
<tr>
<td valign="middle"><form action="" method="post" name="form9" id="form9">
<label>
<textarea name="Nachricht" id="Nachricht" cols="38" rows="5"></textarea>
</label>
</form></td>
</tr>
<tr>
<td rowspan="2"><form action="" method="post" name="form10" id="form10">
<label>
<input name="senden" type="submit" class="Stil10" id="senden" value="Senden" />
</label>
</form></td>
</tr>
<tr> </tr>
</table>
<script type="text/javascript">
<!--
var sprytextfield9 = new Spry.Widget.ValidationTextField("sprytextfield9", "zip_code");
var sprytextfield6 = new Spry.Widget.ValidationTextField("sprytextfield6");
var sprytextfield7 = new Spry.Widget.ValidationTextField("sprytextfield7", "phone_number");
var sprytextfield8 = new Spry.Widget.ValidationTextField("sprytextfield8", "email");
var sprytextfield1 = new Spry.Widget.ValidationTextField("sprytextfield1");
var sprytextfield2 = new Spry.Widget.ValidationTextField("sprytextfield2");
var sprytextfield3 = new Spry.Widget.ValidationTextField("sprytextfield3");
var sprytextfield4 = new Spry.Widget.ValidationTextField("sprytextfield4");
//-->
</script>
-----------------------------------
Was mir aber nicht klar ist:
1.) Was muss ich bei form action="" eingeben, damit die Daten an meine e-Mailadresse geliefert werden? Die e-Mailadresse muss ja auch irgendwo stehen, nur wo? Es sollte auch möglich sein diese Vorgaben nur einmal "pauschal" einzugeben, statt für jede einzelne Form, oder?
2.) Wie sicher ist das Formular überhaupt? Wie kann ich den Datenversand absichern? Ich habe gelesen, dass method=get enctype="multipart/form-data" sicherer sei als method=post.
Für "amateurgerechte" Tipps wäre ich euch sehr dankbar!
hi $name,
ich bin ein Amateur und baue meine Seiten mit Dreamweaver auf. Nun habe ich ein Formular erstellt, dessen Code so ausschaut:
das lasse ich mal unkommentiert....
Was mir aber nicht klar ist:
1.) Was muss ich bei form action="" eingeben, damit die Daten an meine e-Mailadresse geliefert werden? Die e-Mailadresse muss ja auch irgendwo stehen, nur wo? Es sollte auch möglich sein diese Vorgaben nur einmal "pauschal" einzugeben, statt für jede einzelne Form, oder?
bei form action kommt der name eines scripts rein das serverseitig die daten verarbeitet - welche sprachen stehen dir zur verfügung??
2.) Wie sicher ist das Formular überhaupt? Wie kann ich den Datenversand absichern? Ich habe gelesen, dass method=get enctype="multipart/form-data" sicherer sei als method=post.
du meinst nicht das formular sondern das verarbeitende script das ist sicherheitsrelevant - aber du hast ja noch keins.
solange du nicht über HTTPS gehst ist alles manipulierbar, dein script muss daten prüfen, behandeln um hackern oder spammern kein ziel zu bieten.
gruss
shadow
Hi shadow,
das lasse ich mal unkommentiert....
Aus den Antworten, die ich bis jetzt erhalten habe lese ich: Dreamweaver? Pfui-Bah! Ist das so verwerflich? Was soll den ein "Amateur" machen, wenn er sich auf der einen Seite nicht mit den 0-8-15 Tamplates zufrieden geben möchte, auf der anderen Seite aber kein Java oder http-Crack ist? Da bleibt ja nur ein Generator!
bei form action kommt der name eines scripts rein das serverseitig die daten verarbeitet - welche sprachen stehen dir zur verfügung??
HTML
XHTML
CSS
JavaScript
ColdFusion Markup Language (CFML)
Visual Basic (für ASP und ASP.NET)
C# (für ASP.NET)
JSP
PHP
Aber, wie bereits bekannt, bis auf HTML, CSS und bißchen Java kann ich alles andere nicht.
du meinst nicht das formular sondern das verarbeitende script das ist sicherheitsrelevant - aber du hast ja noch keins.
Das ist mir auch bewußt.Deshalb hoffe ich, von euch eine Hilfe zu bekommen.
solange du nicht über HTTPS gehst ist alles manipulierbar
Da würde ich sagen: schöne braune Masse
Danke und Gruß
Der Amateur
hi $name,
Aus den Antworten, die ich bis jetzt erhalten habe lese ich: Dreamweaver? Pfui-Bah! Ist das so verwerflich?
eigentlich nicht, aber DW ist nur auf den ersten kurzen blick ein programm für anfänger, hast du dir mal die dokumentationen dazu durchgelesen? nein? monströs, wenn du mit dem programm umgehen kannst dann brauchst du es nicht mehr und wenn nicht richtet es mehr schaden als nutzen an (ich hab auch lange DW -paralell zu einem editor- benutzt, weil ein paar sachen damit etwas schneller gehen *faulesockeich*)
Was soll den ein "Amateur" machen, wenn er sich auf der einen Seite nicht mit den 0-8-15 Tamplates zufrieden geben möchte, auf der anderen Seite aber kein Java oder http-Crack ist? Da bleibt ja nur ein Generator!
so wie die meisten es hier machen/gemacht haben - man schnappe sich SelfHTML, einen editor (Phase5, Notepad++,...) und lege los.....
(du brauchst weder Java noch HTTP, HTTP ist ein protokol keine sprache...)
Aber, wie bereits bekannt, bis auf HTML, CSS und bißchen Java kann ich alles andere nicht.
du meinst wohl JavaScript?
| du meinst nicht das formular sondern das verarbeitende script das ist sicherheitsrelevant - aber du hast ja noch keins.
Das ist mir auch bewußt.Deshalb hoffe ich, von euch eine Hilfe zu bekommen.
was genau erwartest du von uns? das wir dir dein script schreiben (das frontend ist ja nur die spitze des eisbergs, das backend ist der Casus Knacktus)? gurgel mal nach formmailer+php und du wirst totgeschmissen....
| solange du nicht über HTTPS gehst ist alles manipulierbar
HTTPS ist ja nur die übertragung auf einem teil des weges....
Da würde ich sagen: schöne braune Masse
pudding? ;-)
gruss
shadow
ich bin ein Amateur und baue meine Seiten mit Dreamweaver auf. Nun habe ich ein Formular erstellt, dessen Code so ausschaut:
<form action="" method="post" name="form1" id="form1">
<form action="" method="post" name="form2" id="form2">
...
<form action="" method="post" name="form7" id="form7">
Was mir aber nicht klar ist:
1.) Was muss ich bei form action="" eingeben, damit die Daten an meine e-Mailadresse geliefert werden? Die e-Mailadresse muss ja auch irgendwo stehen, nur wo? Es sollte auch möglich sein diese Vorgaben nur einmal "pauschal" einzugeben, statt für jede einzelne Form, oder?
2.) Wie sicher ist das Formular überhaupt? Wie kann ich den Datenversand absichern? Ich habe gelesen, dass method=get enctype="multipart/form-data" sicherer sei als method=post.
Für "amateurgerechte" Tipps wäre ich euch sehr dankbar!
Also dass ein Amaeur mit Dreamweaver arbeitet, da möchte ich heute nicht rumhacken.
Aber dein Formular hat abgesehen vom Code folgenden Fehler:
Jedes Formularelement steckt in einem eigenen <form> Element. Das heisst, du hast jetzt viele Formulare statt eines verfasst.
In das eine <form> Element, in welches alle abzusendenen Formularelemente gehören braucht als action einen Wert, der auf einen Formularverarbeitenden Process verweist, den du auf deiner Site zu installieren hast.
Bisher schreibst du nur das Frontend (das Formular). Du brauchst aber noch das backend. also ein Script ind PHP oder Perl oder Java oder Ruby oder was auch immer.
Ein Formular versendet man mit method Post, solange man keinen FileUpload damit verbindet. GET ist definitiv nur für sehr beschränkten Content geeignet.
Die Sicherheit von was auch immer steht und fällt mit dem Backend. Dein Frontend tut nichts zur Sache, weil ich es nicht brauche um deine site zu hacken.
mfg Beat
Hi Beat,
Aber dein Formular hat abgesehen vom Code folgenden Fehler: Jedes Formularelement steckt in einem eigenen <form> Element. Das heisst, du hast jetzt viele Formulare statt eines verfasst.
Mir ist jetzt den Aufbau eines Formulars und wo der 1. Fehler liegt klar!
In das eine <form> Element, in welches alle abzusendenen Formularelemente gehören braucht als action einen Wert, der auf einen Formularverarbeitenden Process verweist, den du auf deiner Site zu installieren hast.
Das verstehe ich. Nur wie sieht dieser Script aus?
Ein Formular versendet man mit method Post, solange man keinen FileUpload damit verbindet. GET ist definitiv nur für sehr beschränkten Content geeignet.
OK!
Danke!
Der Amateur
Mahlzeit Amateur,
»» In das eine <form> Element, in welches alle abzusendenen Formularelemente gehören braucht als action einen Wert, der auf einen Formularverarbeitenden Process verweist, den du auf deiner Site zu installieren hast.
Das verstehe ich. Nur wie sieht dieser Script aus?
Das kommt darauf an, was dieses Skript tun soll. Wie gesagt: Informiere Dich zum Thema "Form-Mailer"!
MfG,
EKKi
Das verstehe ich. Nur wie sieht dieser Script aus?
Wie ein Script halt, das heisst, du kannst es öffnen und den text ändern.
Als Programm ist es wie ein typischen CGI Programm aufgebaut:
Initialisierung
Eingabeauswertung
Verarbeitung
Ausgabe
Weil im Internet aller Input Böse ist, muss man Input immer validieren.
Man muss vor dem Speichern von Input oder vor der Ausgabe, diesen kontextgerecht behandeln.
Weil bei Formmailern mit Spam zu rechnen ist, braucht es zudem Massnahmen, die ihn eindämmen.
Zentral ist dann gegen den Schluss der Verarbeitung, dass ein Mail-Transport-Agent aufgerufen wird, dem die Mailmessage übergeben wird. Dabei ist wiederum darauf zu achten, dass man nicht versehentlich eine Spamschleuder baut.
Bei der Ausgabe gibst du
Entweder das Formular neu aus (wenn kein Input vorliegt)
Oder die gibst eine Reihe von Fehlern aus mit dem Formular mit den bestehenden bisherigen Eingaben,
Oder du gibst die Vorschau aus, auch bei korrekten Angaben. Diese Vorschau muss bestätigt werden
Oder du gibst, nach der Vorschau bei korrekten Angaben die Bestätigung aus, dass du die Eingaben akzeptierst hast und weiterverarbeitest UND du gibst dem Autoren eine nett formatierte Liste seiner Angaben zu seiner Archivierung aus.
Wie du das angehst, ist von der Sprache abhängig.
mfg Beat
Moinmoin.
Ein Formular versendet man mit method Post, solange man keinen FileUpload damit verbindet.
Mit welcher Methode dann?
Grüße
Moinmoin.
Ein Formular versendet man mit method Post, solange man keinen FileUpload damit verbindet.
Mit welcher Methode dann?
ertappt!
Natürlich auch mit post!
Mir hat da die notwendige encoding Angabe multipart/form-data zwischen die Neuronen gefunkt.
mfg Beat
Mahlzeit Amateur,
ich bin ein Amateur und baue meine Seiten mit Dreamweaver auf.
Das solltest Du evtl. grundlegend überdenken.
<script src="file:///C|/Dokumente und Einstellungen/PC/Anwendungsdaten/Adobe/Dreamweaver 9/Configuration/Temp/Assets/eam3D.tmp/SpryValidationTextField.js" type="text/javascript"></script>
Davor fehlt zwar einiges, ich hoffe aber mal, dass Du das "nur so" weggelassen hast. Wo genau soll diese Datei später rumliegen und von wem soll sie benutzt werden? Auf einem öffentlich zugänglichen Webserver? Dann ist es eine schlechte Idee, lokale Ressourcen zu verlinken ...
BTW: was genau sind denn diese "SpryValidation"-Javascripte?
<td width="197" valign="middle"><form action="" method="post" name="form1" id="form1">
<span id="sprytextfield1">
<label>
<input name="firma" type="text" class="Stil10" id="firma" size="38" />
</label>
</span>
</form></td>
</tr>
<tr>
<td valign="middle"><form action="" method="post" name="form2" id="form2">
Wieso hast Du in Deinem Dokument insgesamt 10 Formulare? Und wieso haben die ersten 9 davon je ein Eingabefeld, aber keinen Button zum Absenden, das zehnte hingegen einen Button, aber nichts zum Eingeben?
Bist Du Dir überhaupt im Klaren darüber, was Du tust?
1.) Was muss ich bei form action="" eingeben, damit die Daten an meine e-Mailadresse geliefert werden?
<http://de.selfhtml.org/html/referenz/attribute.htm#form@title=Im "action"-Attribut einen entsprechenden gültigen URI angeben (z.B. "mailto:john.doe@example.com").>
Dir sollte aber klar sein, dass dann ein Email-Programm auf dem Clientrechner installiert und konfiguriert sein muss, damit der Browser dieses nutzen kann, um das Formular an die Zieladresse zu schicken.
Wenn Du das nicht möchtest, informiere Dich zum Thema "Form-Mailer" ... dafür brauchst Du dann allerdings einen Webserver, der eine serverseitige Programmiersprache wie PHP, Perl, ASP, Python o.ä. unterstützt.
Die e-Mailadresse muss ja auch irgendwo stehen, nur wo? Es sollte auch möglich sein diese Vorgaben nur einmal "pauschal" einzugeben, statt für jede einzelne Form, oder?
In HTML nicht. Nur mit Hilfe einer serverseitigen Skriptsprache.
2.) Wie sicher ist das Formular überhaupt?
Das Formular selbst? Irrelevant. Der Datenverkehr zwischen Server und Browser kann, wenn er nicht verschlüsselt wird, abgehört und manipuliert werden - ggf. versandte Emails genauso.
Wie kann ich den Datenversand absichern?
Vom Browser zum Server? Z.B. mittels SSL (https:). Vom Browser zum Email-Empfänger? Indem der Anwender die Email verschlüsselt. Vom Server zum Email-Empfänger? Indem Du auf dem Server die Email verschlüsselst.
Ich habe gelesen, dass method=get enctype="multipart/form-data" sicherer sei als method=post.
Wer behauptet so einen Humbug? Woher hast Du diese Desinformation? Beides hat absolut nichts miteinander und mit dem Problem bzw. der Frage erst nichts zu tun.
Für "amateurgerechte" Tipps wäre ich euch sehr dankbar!
Ich habe mein Möglichstes getan ...
MfG,
EKKi
Hallo EKKi,
Davor fehlt zwar einiges, ich hoffe aber mal, dass Du das "nur so" weggelassen hast.
Korrekt!
Wo genau soll diese Datei später rumliegen und von wem soll sie benutzt werden? Auf einem öffentlich zugänglichen Webserver? Dann ist es eine schlechte Idee, lokale Ressourcen zu verlinken ...
Ich habe das Formular probehalber erstellt. Dass dort keine lokale Resourcen verlinkt sein dürfen, wenn es auf dem Webserver steht, ist klar!
BTW: was genau sind denn diese "SpryValidation"-Javascripte?
Das musst du den Dreamweaver fragen.
Wieso hast Du in Deinem Dokument insgesamt 10 Formulare? Und wieso haben die ersten 9 davon je ein Eingabefeld, aber keinen Button zum Absenden, das zehnte hingegen einen Button, aber nichts zum Eingeben?
Hey, jetzt wird mir die Aufbaustruktur eines Formulars klar! `;-)
Bist Du Dir überhaupt im Klaren darüber, was Du tust?
Inzwischen bin ich mir nicht mehr so sicher
-----o00o--´'(\_)´'
--o00o-----
Dir sollte aber klar sein, dass dann ein Email-Programm auf dem Clientrechner installiert und konfiguriert sein muss, damit der Browser dieses nutzen kann, um das Formular an die Zieladresse zu schicken.
Auch wenn ich verwerflicher Weise mit dem Dreamweaver arbeite - so'n Amateur bin ich wiederum auch nicht.
Ich habe mein Möglichstes getan ...
In der Tat, das hast du - Danke!
Der Amateur
Mahlzeit Amateur,
»» Davor fehlt zwar einiges, ich hoffe aber mal, dass Du das "nur so" weggelassen hast.
Korrekt!
Dann lass Dir gesagt sein, dass das nicht besonders sinnvoll ist: Deine Leser können nicht hellsehen, funktionierende Glaskugeln sind eine Rarität und Gedankenleser lesen hier eher nicht mit. Du solltest also schon darauf achten, dass Du die Leute, von denen Du Hilfe erhoffst, mit möglichst genauen Informationen fütterst - irgendwann verliert jeder die Lust am Raten.
»» Dir sollte aber klar sein, dass dann ein Email-Programm auf dem Clientrechner installiert und konfiguriert sein muss, damit der Browser dieses nutzen kann, um das Formular an die Zieladresse zu schicken.
Auch wenn ich verwerflicher Weise mit dem Dreamweaver arbeite - so'n Amateur bin ich wiederum auch nicht.
Das war aus der Art und Weise, wie Du Deine Formulare zusammengestoppelt hast, nicht unbedingt zu erkennen ... :-)
Insgesamt ist diese Art von Formularen (Daten werden mittels des lokalen Email-Clients direkt an den Empfänger geschickt) IMHO eher nicht empfehlenswert ... sinnvoller wäre der Einsatz eines "Form-Mailers".
MfG,
EKKi