[GastForen Programme Web/Internet Adobe Dreamweaver Umstieg von Frontpage auf Dreamweaver - Probleme mit Formularen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Web/Internet - Webdesign, eForms
Themen
Beiträge
Moderatoren
Letzter Beitrag

Umstieg von Frontpage auf Dreamweaver - Probleme mit Formularen

SocioCom
Beiträge gesamt: 6

2. Feb 2005, 14:39
Beitrag # 1 von 8
Bewertung:
(1821 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen
Ich versuche meine erste Site mit Formularen mit Dreamweaver zu machen. Bisher habe ich diesbezüglich nur Erfahrungen mit Frontpage.
Habe verstanden, dass ich ein cgi-Script benötige, um die Daten zu übernehmen. Habe auch alle möglichen Scripts gefunden (hier im Forum), aber bei allen Mustern (z.b.http://aktuell.de.selfhtml.org/.../index.htm#beispiel) erhalte ich nur den bekannten 500er Fehler oder ein leeres browser-fenster mit folgender URL:http://www.sociocom.ch/...=on&Submit=Send.

Ich möchte ein einfaches Formular mit radio-buttons und die Antworten in eine txt-Datei (ergebnis.txt) schreiben (Komma getrennt).

Hat jemand eine Idee oder ein Muster für ein solches Skript?

Mein Provider sagt natürlich, dass seine Installation i.O. ist.

Vielen Dank.

Ach ja, mein Muster (in Arbeit..)

http://www.sociocom.ch/who/fb_english.htm resp. http://www.sociocom.ch/who/fb_english.php (mit php versuche ich es auch, aber bin da genau so anfänger...)

Matthias
X

Umstieg von Frontpage auf Dreamweaver - Probleme mit Formularen

SabineP
Beiträge gesamt: 7586

2. Feb 2005, 15:53
Beitrag # 2 von 8
Beitrag ID: #141407
Bewertung:
(1821 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Matthias,

Dieses Script versendet Formularinhalte per Mail, die Formulardaten werden also nicht gespeichert:
http://aktuell.de.selfhtml.org/...l/index.htm#beispiel

>> erhalte ich nur den bekannten 500er Fehler
Ja, das ist vollkommen normal, wenn Du das Script (Link oben) direkt im Browser aufrufst
und keine Formulardaten an das Script sendest.

>> Ich möchte ein einfaches Formular mit radio-buttons und die Antworten in eine txt-Datei (ergebnis.txt) schreiben (Komma getrennt).

Dieses Script speichert nur die Formulardaten (values) in der Datei ergebnis.txt

---------
#!/usr/bin/perl

use strict;
use CGI;
my $q = new CGI;
open(DATEI, '>>', "ergebnis.txt") or die "Datei kann nicht geoeffnet werden: $!\n";
flock(DATEI, 2);
for my $name(sort $q->param) {
print DATEI $q->param($name), ';';
}
print DATEI "\n";
close(DATEI);

print "Location: danke.html\n\n"; #Die Seite, die nach dem Senden des Formulars im Browser geladen werden soll
--------


Die URL des Scripts mußt Du in das Attribut action Deines Formulars eintragen.

Gruß Sabine


als Antwort auf: [#141385]

Umstieg von Frontpage auf Dreamweaver - Probleme mit Formularen

SocioCom
Beiträge gesamt: 6

2. Feb 2005, 16:24
Beitrag # 3 von 8
Beitrag ID: #141424
Bewertung:
(1821 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Abend Sabine
Vielen Dank für die schnelle Reaktion.

Leider erhalte ich immer noch die gleiche Fehlermeldung.

Das Skript habe ich folgendermassen angepasst:

#!/usr/bin/perl

use strict;
use CGI;
my $q = new CGI;
open(DATEI, '>>', "/who/ergebnis.txt") or die "Datei kann nicht geoeffnet werden: $!\n";
flock(DATEI, 2);
for my $name(sort $q->param){
print DATEI $q->param($name), ';';
}
print DATEI "\n";
close(DATEI);

print "Location: /who/test2.htm\n\n"; #Die Seite, die nach dem Senden des Formulars im Browser geladen werden soll


Das Formular sieht folgendermassen aus:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Kommentarseite</title>
</head>
<body bgcolor="#E0E0E0" text="#000000">
<h1>Ihr Kommentar</h1>
<form action="/cgi-bin/sabine.pl" method="post">
<p>Name:<br><input size="40" maxlength="40" name="Name"></p>
<p>Text:<br><textarea rows="5" cols="50" name="Kommentartext"></textarea></p>
<p><input type="submit" value="Absenden"></p>
</form>
</body>
</html>


Das Script verstehe ich folgendermassen:
mit << my $q = new CGI >> werden die Daten vom Formular an die Variable $q übergeben.

Was ich nicht verstehe ist warum in der "oder" Funktion des open-Befehls das <die> vor den " steht ==>>> die "Datei... Ich würde eher "die Datei.... schreiben. Aber auch das zu verändern bringt nichts.

Hast Du eine Idee?

Vielen Dank im voraus

Matthias



als Antwort auf: [#141385]

Umstieg von Frontpage auf Dreamweaver - Probleme mit Formularen

SabineP
Beiträge gesamt: 7586

2. Feb 2005, 17:02
Beitrag # 4 von 8
Beitrag ID: #141440
Bewertung:
(1821 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Der Pfad stimmt so "/who/ergebnis.txt" nicht, so wäre es richtig:

open(DATEI, '>>', $ENV{'DOCUMENT_ROOT'} . "/who/ergebnis.txt") or die "Datei kann nicht geoeffnet werden: $!\n";

die heißt deutsch stirb.
Das Script wird also beendet, wenn die Datei ergebnis.txt nicht geöffnet werden kann und das führt zum Error 500.
Der Text hinter die "Datei kann nicht geoeffnet werden: $!\n" erscheint als Fehlerursache in der error.log des Apache.

Hat die Datei sabine.pl Ausführungsrechte, also chmod 755?

Gruß Sabine


als Antwort auf: [#141385]
(Dieser Beitrag wurde von SabineP am 2. Feb 2005, 17:03 geändert)

Umstieg von Frontpage auf Dreamweaver - Probleme mit Formularen

SocioCom
Beiträge gesamt: 6

2. Feb 2005, 17:25
Beitrag # 5 von 8
Beitrag ID: #141454
Bewertung:
(1821 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hat leider auch nichts gebracht.

Ob die Rechte vergeben sind, muss ich meinen Provider fragen. Ich gehe jedenfalls davon aus (im Sinne von alles was in cgi-bin ist, darf auch ausführen, sonst könnte ich es auch auch in /who speichern).

Ich glaube, der Hase liegt in meinem Formular begraben. Ich schaffe es nicht, die Daten in den entsprechenden Feldern zu speichern. Die "Fachliteratur" ist da auch nicht eindeutig. Manchmal stehen Werte in Anführungs- und Schlusszeichen, manchmal nicht (z.B. beim Input-Befehl.

Aber trotzdem, vielen Dank für die Hilfe.


als Antwort auf: [#141385]

Umstieg von Frontpage auf Dreamweaver - Probleme mit Formularen

SabineP
Beiträge gesamt: 7586

2. Feb 2005, 17:39
Beitrag # 6 von 8
Beitrag ID: #141464
Bewertung:
(1821 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Die Rechte stellst Du mit dem FTP-Programm ein.
Mit WS-FTP
rechte Maustaste --> chmod --> Eigentümer alles auswählen, Gruppe lesen ausführen, Andere lesen ausführen

Vielleicht klappt es auch deshalb nicht, weil Du die Datei außerhalb des Verzeichnisses cgi-bin speichern möchtest
(Lösung: probier die erste Variante des Scripts, so wie ich es gepostet hatte)

Der Quellcode des Formular ist richtig (Inhalt der Attribute immer in Anführungsstriche).
Gespeichert werden die Daten erst durch das Script, das die Daten entgegennimmt (sabine.pl macht das),
das Formular selbst kann nichts speichern.

Gruß Sabine


als Antwort auf: [#141385]
(Dieser Beitrag wurde von SabineP am 2. Feb 2005, 17:40 geändert)

Umstieg von Frontpage auf Dreamweaver - Probleme mit Formularen

SocioCom
Beiträge gesamt: 6

3. Feb 2005, 10:17
Beitrag # 7 von 8
Beitrag ID: #141644
Bewertung:
(1821 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Morgen Sabine
Vielen Dank, der Tag fängt mit einem Erfolgserlebnis an! Es lag an den Rechten. Kannst Du mir noch ein Buch zu CGI-Scripten empfehlen? Habe seit bald 10 Jahren nicht mehr programmiert, würde aber trotzdem gerne wissen, was in dem Script nun drinsteht... ;-)
Nochmals herzlichen Dank
Matthias


als Antwort auf: [#141385]

Umstieg von Frontpage auf Dreamweaver - Probleme mit Formularen

SabineP
Beiträge gesamt: 7586

3. Feb 2005, 11:54
Beitrag # 8 von 8
Beitrag ID: #141697
Bewertung:
(1821 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Matthias,

die Perldokumentation findest Du hier:
http://perldoc.com

Eine kleine Link-Sammlung aus dem Perl-Forum:
http://www.HilfDirSelbst.ch/...8&topic_id=14725

Das Script ist Perl und verwendet das CGI-Modul.

#!/usr/bin/perl

use strict;
use CGI; # das CGI-Modul benutzen
my $q = new CGI; #neues CGI-Objekt anlegen
open(DATEI, '>>', "ergebnis.txt") or die "Datei kann nicht geoeffnet werden: $!\n"; #Datei zum Schreiben/Anhängen öffnen
flock(DATEI, 2); #Datei blockieren bis zum close, damit bei Mehrfachzugriffen die Schreibvorgänge sich nicht ins Gehege kommen
for my $name(sort $q->param) { #Parameter (Formularfeldnamen) des Vormulars alphabetisch sortieren
print DATEI $q->param($name), ';'; #Inhalt der Values des Formulars schreiben, Semikolon als Trennzeichen
}
print DATEI "\n"; #Zeilenumbruch schreiben
close(DATEI); #Datei schließen
print "Location: danke.html\n\n"; #Die Seite, die nach dem Senden des Formulars im Browser geladen werden soll


zum CGI-Modul gibt es auch eine Beschreibung bei Selfhtml:
http://de.selfhtml.org/cgiperl/module/cgi.htm

einige Bücher: http://www.oreilly.de/perl/

Gruß Sabine


als Antwort auf: [#141385]
(Dieser Beitrag wurde von SabineP am 3. Feb 2005, 12:01 geändert)
X

Aktuell

Web / SEO / Blockchain / Betriebssystem
unsplash_300

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
08.11.2022

Frankfurt, Fraport Conference Center
Dienstag, 08. Nov. 2022, 13.30 - 18.00 Uhr

Seminar

Auf der Enfocus World Tour stellen wir Ihnen gemeinsam mit Enfocus die aktuellen Highlights von Enfocus Switch und dem Impressed Workflow Server (IWS) vor. Wir präsentieren Ihnen anhand typischer Aufgabenstellungen in einem modernen Produktionsbetrieb die Möglichkeiten, die Enfocus Switch für die Automatisierung und Standardisierung von Abläufen bietet. Wir haben sowohl für Produktionsverantwortliche als auch technisch Interessierte ein spannendes Programm vorbereitet, bei dem Sie sicherlich viel Neues erfahren werden, welches Sie in Ihrem eigenen Betrieb umsetzen können. Die Veranstaltung bietet darüber hinaus eine hervorragende Möglichkeit, sich mit anderen Anwendern und Workflow-Spezialisten auszutauschen und Antworten auf konkrete Aufgabenstellungen zu erhalten, welche Sie mit Hilfe von Enfocus Switch/IWS umsetzen möchten.

Wir sind jeweils an 2 Tagen in Frankfurt, Hamburg und München vor Ort. Der erste (halbe) Tag richtet sich in erster Linie an Betriebsleiter und Produktionsverantwortliche in Druckereien - ist also weniger technisch orientiert - sondern gibt einen Überblick zu den heutigen Möglichkeiten einer automatisierten Produktion.

Der zweite Tag (Switch Anwender-Treffen) richtet sich an bestehende Switch-Anwender und Administratoren.

Anmeldung und weitere Infos: https://www.impressed.de/schulung.php?c=sDetail&sid=310

Ja

Organisator: Enfocus/Impressed

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=310

Enfocus World Tour 2022
Veranstaltungen
08.11.2022

Frankfurt, Fraport Conference Center
Dienstag, 08. Nov. 2022, 13.30 - 18.00 Uhr

Seminar

Auf der Enfocus World Tour stellen wir Ihnen gemeinsam mit Enfocus die aktuellen Highlights von Enfocus Switch und dem Impressed Workflow Server (IWS) vor. Wir präsentieren Ihnen anhand typischer Aufgabenstellungen in einem modernen Produktionsbetrieb die Möglichkeiten, die Enfocus Switch für die Automatisierung und Standardisierung von Abläufen bietet. Wir haben sowohl für Produktionsverantwortliche als auch technisch Interessierte ein spannendes Programm vorbereitet, bei dem Sie sicherlich viel Neues erfahren werden, welches Sie in Ihrem eigenen Betrieb umsetzen können. Die Veranstaltung bietet darüber hinaus eine hervorragende Möglichkeit, sich mit anderen Anwendern und Workflow-Spezialisten auszutauschen und Antworten auf konkrete Aufgabenstellungen zu erhalten, welche Sie mit Hilfe von Enfocus Switch/IWS umsetzen möchten.

Wir sind jeweils an 2 Tagen in Frankfurt, Hamburg und München vor Ort. Der erste (halbe) Tag richtet sich in erster Linie an Betriebsleiter und Produktionsverantwortliche in Druckereien - ist also weniger technisch orientiert - sondern gibt einen Überblick zu den heutigen Möglichkeiten einer automatisierten Produktion.

Der zweite Tag (Switch Anwender-Treffen) richtet sich an bestehende Switch-Anwender und Administratoren.

Anmeldung und weitere Infos: https://www.impressed.de/schulung.php?c=sDetail&sid=310

Ja

Organisator: Enfocus/Impressed

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=310

Enfocus World Tour 2022