Beitrag von Micha Jost (347 Beiträge) am Montag, 17.Dezember.2001, 10:30.
@oliver-kleiner Nachtrag zum Formular
Hallo Oliver,
Du hattest mir letzte Woche dankenswerterweise einen Code geschrieben, mit dem ein Formulareintrag sowohl an den User, als auch eine E-Mail-Adresse geschickt wird.
Der Eintrag kommt zwar in die Datenbank, aber sonst tut sich nix.
Kannst Du noch mal schauen - das wäre prima.
Danke
Gruß
Micha
<perl>
if ($cmd eq "addOnline"){put undef,"scheck_neu"; mail $E-Mail,"Online-Formular","Vielen Dank für Ihre Eingaben in unser Online-Formular",'micha.jost@buerstadt.de',"","Micha Jost","","";
out "Vielen Dank für Ihren Eintrag!";}
</perl>
Antworten
Beitrag von Sander (8133 Beiträge) am Montag, 17.Dezember.2001, 10:43.
Re: @oliver-kleiner Nachtrag zum Formular
probier mal
mail $_put{E-Mail},"Online-Formular","Vielen Dank für Ihre Eingaben in unser Online-Formular",'micha.jost@buerstadt.de',"","Micha Jost","","";
wenn E-Mail aus dem Eintragsform kommt.
Sander
Antworten
Beitrag von Micha Jost (347 Beiträge) am Montag, 17.Dezember.2001, 11:17.
Re: @oliver-kleiner Nachtrag zum Formular
Hallo,
Danke für den Tip.
Jetzt passiert was-aber ich bekomme jetzt das Feedback-Mail "Vielen Dank ...." das sollte der User zu seiner eingetragenen Mailadresse bekommen.
Unter micha.jost@buerstadt.de sollte ich den eigentliche Eintrag bekommen-aber da kommt immer noch nix.
Gruß
Micha
Antworten
Beitrag von Oliver ;-) (439 Beiträge) am Montag, 17.Dezember.2001, 13:51.
Re: @oliver-kleiner Nachtrag zum Formular
Hallo Micha,
ich habe das jetzt mal durchgetestet. Das ist das Ergebnis:
<img src=http://www.rathaus-buerstadt.de/bilder/online.gif>
<p>Neuer Eintrag:</p><table><form action="baseportal.pl?htx=/$htx&cmd=addOnline" method="post" enctype="multipart/form-data"><input type=hidden name="htx=" value="$htx"><input type=hidden name="cmd=" value="addOnline"><tr><td align=right><font size=2 face=arial,helvetica>Nachricht:</td><td><font size=2 face=arial,helvetica><textarea name="Nachricht:=" cols=50 rows=4 wrap=virtual>
Bitte geben Sie hier Mängel, Anregungen und Wünsche ein. Wir sind bestrebt die Probleme so schnell es geht zu beheben.
Sie werden von uns benachrichtigt.
Vielen Dank</textarea></td></tr><tr><td align=right><font size=2 face=arial,helvetica>Telefon:</td><td><font size=2 face=arial,helvetica><input type="text" name="Telefon:=" size=20 value="Ihre Telefonnummer"></td></tr><tr><td align=right><font size=2 face=arial,helvetica>EMail:</td><td><font size=2 face=arial,helvetica><input type="text" name="EMail:=" size=30 value=""></td></tr><tr><td></td><td nowrap><input type=submit value="Abschicken"> <input type=reset value="Zurücksetzen"> </td></tr></form></table>
<perl>
if ($cmd eq "addOnline")
{
put undef,"scheck_neu"; ## damit werden die Daten aus dem Formular in die DB eingetragen
out "E-Mail - $EMail<br>"; ## Dies kannst du wieder rausnehmen - ist nur zum Testen
mail $EMail,"Online-Formular","Vielen Dank für Ihre Eingaben in unserem Online-Formular",'micha.jost@buerstadt.de',"","Micha Jost","",'micha.jost@buerstadt.de';
out "Vielen Dank für deinen Vorschlag !";
}
</perl>
Also, aus der Variablen $E-Mail habe ich den Bindestrich rausgenommen, so dass diese nun $EMail lautet. Damit du auch eine Mail erhältst, musst du deine Emailadresse als Blindkopie eingeben. Mehr über die Emailfunktion erfährst du in der Doku:
http://www.baseportal.de/bpws_doku.html#a22
Grüße
Oliver ;-)
Antworten
Beitrag von Micha Jost (347 Beiträge) am Montag, 17.Dezember.2001, 15:46.
Re: @oliver-kleiner Nachtrag zum Formular
Hallo Oliver,
Danke für Deine Bemühungen.
Es gibt das noch ein kleines Problem-vielleicht habe ich mich ja missverständlich ausgedrückt.
Dein Skript sorgt dafür, dass ein Eintrag in die Datenbank aufgenommen wird (gut), es sorgt weiter dafür dass ich micha.jost@buerstadt.de ein Mail bekomme, das lautet" Vielen Dank für Ihre Eingaben in unserem Online Formular" (nicht so gut).
Das sollte aber der unbekannte User bekommen und ich sollte ein Mail mit dem Dateneintrag des Users bekommen.
(vergleichbar mit mail_put=)
Aber vielleicht geht das ja gar nicht-oder ich steh beidbeinig auf dem Schlauch.
Gruß
Micha
Antworten
Beitrag von Oliver ;-) (439 Beiträge) am Montag, 17.Dezember.2001, 17:45.
Re: @oliver-kleiner Nachtrag zum Formular
Antworten
Beitrag von Micha Jost (347 Beiträge) am Dienstag, 18.Dezember.2001, 08:20.
Re: @oliver-kleiner Nachtrag zum Formular
Oliver, ich bin begeistert.
Das funktioniert.
Schade dass Du nicht in Bürstadt wohnst-wir würden Dir sofort den Gehweg flicken, die Strassenlaterne reparieren-oder was auch immer.
Eine Winzigkeit hätte ich noch.
Wie kann ich sicherstellen, dass alle Felder in diesem Formular ausgefüllt werden?
Dann wär´s aber wirklich perfekt.
Danke
Micha
Antworten
Beitrag von Oliver ;-) (49 Beiträge) am Dienstag, 18.Dezember.2001, 11:13.
Re: @oliver-kleiner Nachtrag zum Formular
Antworten
Beitrag von Oliver ;-) (439 Beiträge) am Dienstag, 18.Dezember.2001, 11:22.
Re: @oliver-kleiner Nachtrag zum Formular
Antworten
Beitrag von Micha Jost (347 Beiträge) am Dienstag, 18.Dezember.2001, 12:19.
Re: @oliver-kleiner Nachtrag zum Formular
Hallo Oliver,
Danke für den Tip,
Ich habe mal das Script an alle möglichen Stellen plaziert, aber es will nicht.
Das war der letzte Versuch
<html><head><title>Bürger Scheck</title>
<font face="verdana">
<script language="JavaScript" type="text/javascript">
<!--function formcheck() {
if (document.forms[0].elements["Nachricht:="].value=="") {
alert("Bitte geben Sie eine Nachricht ein");
document.forms[0].elements["Nachricht:="].focus();
return false;
}
if (document.forms[0].elements["Telefon:="].value=="") {
alert("Bitte geben Sie Ihre Telefonnummer ein");
document.forms[0].elements["Telefon:="].focus();
return false;
}
if (document.forms[0].elements["EMail:="].value=="") {
alert("Bitte gib deine EMail-Adresse ein");
document.forms[0].elements["EMail:="].focus();
return false;
}
}
//-->
</script>
</head>
<body bgcolor=ffffff>
<img src=http://www.rathaus-buerstadt.de/bilder/online.gif>
<p><b>Wo gibt es Probleme?<br>
Sagen Sie uns Bescheid.</b></p><table><form action="baseportal.pl?htx=/$htx&cmd=addOnline" method="post" enctype="multipart/form-data"><input type=hidden name="htx=" value="$htx"><input type=hidden name="cmd=" value="addOnline"><tr><td align=right><font size=2 face=verdana,arial,helvetica>Nachricht:</td><td><font size=2 face=verdana,arial,helvetica><textarea name="Nachricht:=" cols=35 rows=4 wrap=virtual>
Bitte geben Sie hier Mängel, Anregungen und Wünsche ein. Wir sind bestrebt die Probleme so schnell es geht zu beheben.
Sie werden von uns benachrichtigt.
Vielen Dank</textarea></td></tr><tr><td align=right><font size=2 face=verdana,arial,helvetica>Telefon:</td><td><font size=2 face=arial,helvetica><input type="text" name="Telefon:=" size=20 value="Ihre Telefonnummer"></td></tr><tr><td align=right><font size=2 face=verdana,arial,helvetica>E-Mail:</td><td><font size=2 face=arial,helvetica><input type="text" name="EMail:=" size=30 value=""></td></tr><tr><td></td><td nowrap><input type=submit value="Abschicken"> <input type=reset value="Zurücksetzen"> </td></tr></form></table>
<perl>
if ($cmd eq "addOnline")
{
put undef,"scheck_neu"; ## damit werden die Daten aus dem Formular in die DB eingetragen
out "E-Mail: $EMail<br>"; ## Dies kannst du wieder rausnehmen - ist nur zum Testen
$inhalt="Vielen Dank für Ihren Hinweis.\n\nIhre Eingaben waren:\n\nTelefon: $Telefon\n\nE-Mail: $EMail\n\nNachricht: $Nachricht\n\nViele Grüße\nIhre Stadtverwaltung Bürstadt\n\n\nhttp://www.rathaus-buerstadt.de";
mail $EMail,"Online-Formular","$inhalt Vielen Dank für Ihre Eingaben in unserem Online-Formular",'micha.jost@buerstadt.de',"","Micha Jost","",'micha.jost@buerstadt.de';
out "Vielen Dank für Ihre Eingabe-!";
}
</perl>
</html>
Antworten
Beitrag von Claus S. (1671 Beiträge) am Dienstag, 18.Dezember.2001, 12:26.
Re: @oliver-kleiner Nachtrag zum Formular
Antworten
Beitrag von Oliver ;-) (49 Beiträge) am Dienstag, 18.Dezember.2001, 13:04.
Re: @oliver-kleiner Nachtrag zum Formular
Joo...
Außerdem brauchst du den Font-Tag nicht, da die Meldung eh im Pop-Up ausgegeben wird.
Oliver ;-)
Antworten
Beitrag von Sander (8133 Beiträge) am Dienstag, 18.Dezember.2001, 12:59.
Re: @oliver-kleiner Nachtrag zum Formular
Antworten
Beitrag von Sander (8133 Beiträge) am Dienstag, 18.Dezember.2001, 13:00.
Re: @oliver-kleiner Nachtrag zum Formular
onsubmit="return formcheck()">
Antworten
Beitrag von Claus S. (1671 Beiträge) am Dienstag, 18.Dezember.2001, 12:05.
Re: @oliver-kleiner Nachtrag zum Formular
Antworten
Beitrag von Oliver ;-) (439 Beiträge) am Dienstag, 18.Dezember.2001, 13:06.
Re: @oliver-kleiner Nachtrag zum Formular
Danke Claus, ich werd mir das mal vormerken...
In einigen Bibbeispielen habe ich das auch schon gesehen, nur selber noch nicht umgesetzt.
Oliver ;-)
Antworten
Beitrag von Micha Jost (347 Beiträge) am Dienstag, 18.Dezember.2001, 14:13.
Re: @oliver-kleiner Nachtrag zum Formular
Hallo Ihr Helferscharen,
ich habe jetzt, dank Eurer Hilfe, eines der schönsten Formulare überhaupt-sogar mit Eingabeprüfung.
Nur gibts jetzt wieder so´n blödes include-Problem.
Dieses Template ("scheck_neu") wird in die "Startseite" included.
Nach der Eingabe in das Formular wird gemosert:
Fehler: init: /usr/local/httpd/baseportal/ra/th/rathaus-buerstadt.de/onlineformulare/startseite.fields konnte nicht geöffnet werden ]
Ich habe dunkel in Erinnerung, dass, wenn man die Datenbank im Template angibt (db=scheck_neu) dann geht´s. Doch wo schreibt man das rein?
Nachfolgend das Template scheck_neu.
Danke für Tips
Micha
<html><head><title>Bürger Scheck</title>
<font face="verdana">
</head>
<body bgcolor=ffffcc>
<img src=http://www.rathaus-buerstadt.de/bilder/online.gif>
<perl>
my $maxtext=400;
if(%_put)
{
$emsg.="Bitte geben Sie einen Text ein! " if $_put{Nachricht} eq "";
$emsg.="Der Text ist zu lang! Bitte kürzen Sie ihn auf maximal $maxtext Zeichen." if length($_put{Nachricht})>$maxtext;
$emsg.="Bitte geben Sie Ihre Telefonnummer ein! " if $_put{Telefon} eq "";
$emsg.="Bitte geben Sie Ihre E-Mailadresse ein! " if $_put{EMail} eq "";
if($emsg eq "")
{
put;
out "<ul><font color=#66cc00><b>Vielen Dank. Ihre Nachricht wurde aufgenommen. Wir werden uns mit Ihnen in Verbindung setzen.</b></ul></font>";
} else
{
out "<ul><font color=d80000><b>$emsg</b></font></ul>";
}
}
"";
<p><b>Wo gibt es Probleme?<br>
Sagen Sie uns Bescheid.</b></p><table><form action="baseportal.pl?htx=/$htx&cmd=addOnline" method="post" enctype="multipart/form-data"><input type=hidden name="htx=" value="$htx"><input type=hidden name="cmd=" value="addOnline"><tr><td align=right><font size=2 face=verdana,arial,helvetica>Nachricht:</td><td><font size=2 face=verdana,arial,helvetica><textarea name="Nachricht:=" cols=35 rows=4 wrap=virtual>
Bitte geben Sie hier Mängel, Anregungen und Wünsche ein. Wir sind bestrebt die Probleme so schnell es geht zu beheben.
Sie werden von uns benachrichtigt.
Vielen Dank</textarea></td></tr><tr><td align=right><font size=2 face=verdana,arial,helvetica>Telefon:</td><td><font size=2 face=arial,helvetica><input type="text" name="Telefon:=" size=20 value="Ihre Telefonnummer"></td></tr><tr><td align=right><font size=2 face=verdana,arial,helvetica>E-Mail:</td><td><font size=2 face=arial,helvetica><input type="text" name="EMail:=" size=30 value=""></td></tr><tr><td></td><td nowrap><input type=submit value="Abschicken"> <input type=reset value="Zurücksetzen"> </td></tr></form></table>
<perl>
if ($cmd eq "addOnline")
{
put undef,"scheck_neu"; ## damit werden die Daten aus dem Formular in die DB eingetragen
$inhalt="Vielen Dank für Ihren Hinweis.\n\nIhre Eingaben waren:\n\nTelefon: $Telefon\n\nE-Mail: $EMail\n\nNachricht: $Nachricht\n\nViele Grüße\nIhre Stadtverwaltung Bürstadt\n\n\nhttp://www.rathaus-buerstadt.de";
mail $EMail,"Online-Formular","$inhalt Vielen Dank für Ihre Eingaben in unserem Online-Formular",'micha.jost@buerstadt.de',"","Micha Jost","",'micha.jost@buerstadt.de';
Antworten
Beitrag von Oliver ;-) (439 Beiträge) am Dienstag, 18.Dezember.2001, 20:04.
Re: @oliver-kleiner Nachtrag zum Formular
Antworten
Beitrag von Micha Jost (347 Beiträge) am Dienstag, 18.Dezember.2001, 22:23.
Re: @oliver-kleiner Nachtrag zum Formular
Hallo Oliver,
nö, das isses leider nicht. Fehlermeldung bleibt die gleiche.
Was kann das sein?
Gruß
Micha
Antworten
Beitrag von Oliver ;-) (439 Beiträge) am Dienstag, 18.Dezember.2001, 23:34.
Re: @oliver-kleiner Nachtrag zum Formular
Antworten
Beitrag von Micha Jost (347 Beiträge) am Mittwoch, 19.Dezember.2001, 08:38. WWW: rathaus-buerstadt.de
Re: @oliver-kleiner Nachtrag zum Formular
Hallo Oliver,
Big point-50 cbm Geröll für die Verkehrsberuhigung sind unterwegs ;-)
Im Ernst-es klappt und zwar vorzüglich.
Man mus das untere put "scheck_neu" allerdings rausschmeissen, da er sonst 2 identische Datensätze in die Datei schreibt (by the way-eigentlich auch ein gutes Verfahren um 2 unterschiedliche Datenbanken zu füllen).
Die Eingabeabfrage ist aus CB`s Gästebuch aus der BIB abgekupfert.
Beste Grüße aus Bürstadt und schöne Weihnachten an alle bp-Engel.
Micha
Antworten
Beitrag von Oliver ;-) (439 Beiträge) am Mittwoch, 19.Dezember.2001, 09:38.
Re: @oliver-kleiner Nachtrag zum Formular
Hallo Micha,
ist doch schön, wenn man gemeinsam zum Erfolg kommt :-) - das macht ja auch das Forum hier aus...
Einen Tipp von mir hast du eventuell übersehen:
Du kannst übrigens in deine Textfelder (<input type=text...>) noch diesen Befehl
onFocus="this.value=' '"
reinsetzen. Dadurch wird das Textfeld geleert, wenn der User reinklickt.
Sonst nützt nämlich deine Fehlerüberprüfung mit Perl und Javascript nicht viel, wenn er die Felder einfach so lässt wie sie sind.
Grüße
Oliver ;-)
Antworten
Beitrag von Micha Jost (347 Beiträge) am Mittwoch, 19.Dezember.2001, 11:53.
Re: @oliver-kleiner Nachtrag zum Formular
Antworten
Beitrag von Oliver ;-) (439 Beiträge) am Mittwoch, 19.Dezember.2001, 12:05.
Re: @oliver-kleiner Nachtrag zum Formular
Antworten
Beitrag von Micha Jost (347 Beiträge) am Mittwoch, 19.Dezember.2001, 12:24.
Re: @oliver-kleiner Nachtrag zum Formular
Hallo Oliver,
noch mal 30 cbm Schotter gefällig??
Es funktioniert - auch in textarea-ich hatte ein Leerzeichen zwischen den Anführungszeichen.
Ich muss sagen, dieses Formular ist nun ein echtes Juvel geworden.
Fast was für die BIB-was meinst Du?
Wir fassen zusammen:
-es erfolgt eine Eingabeüberprüfung
-es werden 2 Mails abgeschickt (einmal an user, einmal an Adressat)
-die Daten werden zusätzlich in eine Datenbank geschrieben.
-virtueller Inhalt in Feldern wird automatisch gelöscht
-das Teil ist include-fähig
... und alles wurde letzlich von der pb-Gemeinde gebastelt.
oliver, sander und claus s.
Danke
Micha
Antworten