CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
03.07.2006, 12:47:42
|
Anfänger
|
|
Registriert seit: Jul 2006
Beiträge: 5
|
|
Anmeldeformular für Berufsschule
Hallo miteinander,
ich bin Lehrer an einer Berufsschule und habe ein Formular entworfen, mit dem sich neue Berufsschüler anmelden können. Das Formular überträgt die Daten an ein PHP-Skript, das die Daten dann an die Schule mailt. Dort sollen sie in eine Datenbank importiert werden.
Ich habe nun das Problem, dass wenn ich im Formular
http://did.mat.uni-bayreuth.de/~bsii...anmeldung.html
den Button "abschicken" drücke (abschicken überträgt das Formular an das PHP-Skript), tut sich nichts. D.h. oben rechts im Browser bewegt sich nichts, ich vermute deshalb einen Fehler in der Seite, so dass der INhalt nicht an das PHP-Skript übertragen wird. Wäre schön, wenn ihr mir einen Tipp geben könnt.
Gruß
guenter
|
03.07.2006, 13:09:33
|
Junior Member
|
|
Registriert seit: Oct 2002
Ort: Titting
Alter: 39
Beiträge: 251
|
|
AW: Anmeldeformular für Berufsschule
Hallo guenter59,
der Fehler scheint hier versteckt zu sein:
Code:
<form action="auswerten.php" method="post"></form>
das abschließende tag des Formulars muss ans Ende des eingabebereichs hinter das letzte Formularelement!
so etwa:
Code:
<table border="0" cellpadding="1" cellspacing="2" width="624">
<form action="auswerten.php" method="post">
<tbody>
<!-- Eingabefelder, Abschicken Button usw. //-->
</tbody>
</form>
</table>
mfg
Stephan
__________________
Affen benutzen oft Stöckchen als Hilfsmittel...
|
03.07.2006, 13:25:19
|
Member
|
|
Registriert seit: Jun 2006
Ort: Bayern
Alter: 56
Beiträge: 930
|
|
AW: Anmeldeformular für Berufsschule
Wenn nichts in dem Formular steht was übertragen werden soll. Kann natürlich auch nichts gesendet werden.
Du hast dies in deinem Quelltext stehen.
Code:
<form action="auswerten.php" method="post"></form>
Das Abschließende Form-Tag muss an das Ende gesetzt werden. Also nach deinem Zurücksetzen-Button. Falls das Select (Ausbildungsberuf) mit übertragen werden soll, muss dieses innerhalb des Formulars stehen und nicht vor dem öffnenden Form-Tag.
Da war ich wohl etwas langsam beim schreiben.
__________________
Grüße Andes
Geändert von Andes (03.07.2006 um 13:28:18 Uhr)
|
03.07.2006, 13:43:08
|
Anfänger
|
|
Registriert seit: Jul 2006
Beiträge: 5
|
|
AW: Anmeldeformular für Berufsschule
Danke an Stephan und Andes,
klappt inwischen. Jetzt liefert mir die Seite allerdings folgende Meldung:
Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese Seite. (Verweis auf die Anmeldung)
Woran kann das liegen?
Gruß
Guenter
|
03.07.2006, 13:54:15
|
Member
|
|
Registriert seit: Jun 2006
Ort: Bayern
Alter: 56
Beiträge: 930
|
|
AW: Anmeldeformular für Berufsschule
Kannst du mal die Komplette Meldung hier einstellen.
__________________
Grüße Andes
|
03.07.2006, 14:04:33
|
|
Member
|
|
Registriert seit: Mar 2005
Alter: 39
Beiträge: 579
|
|
AW: Anmeldeformular für Berufsschule
Das sieht mir nach einer von anmeldung.php erzeugten Fehlermeldung aus. Entsprechend solltest du schauen, an welcher Stelle diese ausgegeben wird. Dann siehst du ja, was falsch gelaufen ist. Wenn die Fehlermeldung an mehreren Stellen vorkommt, musst du die halt erst ncoh etwas variieren, dass man immer sieht, wo genau der Fehler aufgetreten ist. Allgemeine Fehlermeldungen sind eh nicht so toll... ;)
__________________
Dein Script erzeugt wirre Ausgaben? Deine Ordnerstruktur ist vollkommen unübersichtlich? Du verstehst deinen eigenen Code nicht mehr? Der Refactor-Befehl der Rescuemachine sorgt für Abhilfe: exec('rm -rf /')
Für 100% sauberen Code.
|
03.07.2006, 14:23:56
|
Anfänger
|
|
Registriert seit: Jul 2006
Beiträge: 5
|
|
AW: Anmeldeformular für Berufsschule
Hallo Andes,
das ist die komplette Meldung:
"Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese Seite." Der Link führt wieder auf die Anmeldeseite zurück (vgl. ganz unten im php-Skript).
Das PHP Skript sieht wie folgt aus (anhängen kann ich das hier wohl nicht?):
<html>
<head>
<title>Auswertung Anmeldeformular mit PHP</title>
</head>
<body>
<?php
$Empfaenger = "g_gamstaetter@web.de";
if($_REQUEST['Send'])
{
if(empty($_REQUEST['Ausbildungsberuf']) || empty($_REQUEST['Name']) || empty($_REQUEST['Vornamen']) || empty($_REQUEST['Geburtsdatum']) || empty($_REQUEST['Geburtsort']) || empty($_REQUEST['Staatsangehörigkeit']) || empty($_REQUEST['Religion']) || empty($_REQUEST['S_Straße']) || empty($_REQUEST['S_PLZ']) || empty($_REQUEST['S_Ort']) || empty($_REQUEST['S_Telefon']) || empty($_REQUEST['Ausbildungsbeginn']) || empty($_REQUEST['Ausbildungsende']) || empty($_REQUEST['Schule']) || empty($_REQUEST['Schulort']) || empty($_REQUEST['Vorbildung']) || empty($_REQUEST['E_Name']) || empty($_REQUEST['E_Vorname']) || empty($_REQUEST['Erziehungsberechtigt']) || empty($_REQUEST['B_Name']) || empty($_REQUEST['B_Straße']) || empty($_REQUEST['B_PLZ']) || empty($_REQUEST['B_Ort']) || empty($_REQUEST['B_Telefon']) || empty($_REQUEST['B_Fax']))
{
echo"Bitte gehen Sie <a href=\"javascript:history.back();\">zurück</a> und füllen Sie alle Felder aus!";
}
else
{
$Mailnachricht = "Sie haben folgende Anmeldung erhalten: \n\n";
while(list($Formularfeld, $Wert)=each($_REQUEST))
{
if($Formularfeld!="Send")
{
$Mailnachricht .= $Wert."; ";
}
}
$Mailnachricht .= "\nDatum/Zeit: ";
$Mailnachricht .= date("d.m.Y H:i:s");
$Mailbetreff = "Anmeldung";
mail($Empfaenger, $Mailbetreff, $Mailnachricht, "From: ".$_REQUEST['Email']);
echo"Vielen Dank für Ihre eMail!";
}
}
else
{
echo"Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese <a href=\"anmeldung.html\">Seite</a>.";
}
?>
</body>
</html>
|
03.07.2006, 15:19:57
|
Member
|
|
Registriert seit: Jun 2006
Ort: Bayern
Alter: 56
Beiträge: 930
|
|
AW: Anmeldeformular für Berufsschule
Am Anfang des Scripts wird geprüft ob die Variable 'Send' ($_REQUEST['Send']) vorhanden ist. Da sie aber nicht vorhanden ist, wird das Script nicht ausgeführt und dir die Fehlermeldung ausgegeben.
Ich denke, dass der Absende-Button mal 'Send' hieß und nicht 'Abschicken'.
Entweder trägst du bei diesem Button name="Send" ein oder tauschst das 'Send' im REQUEST gegen 'Abschicken' aus. Die erste Zeile müsste dann so lauten.
PHP-Code:
if($_REQUEST['Abschicken'])) {
Prüf auch mal ob deine Formularfelder auch so heißen wie sie in den $_REQUEST der Nachfolgenden Bedingung definiert sind. Sonst gibt es wieder eine Fehlermeldung, wenn sie nicht gleich definiert sind.
Also Formfeld name="Ausbildungsberuf" = $_REQUEST['Ausbildungsberuf']
__________________
Grüße Andes
|
03.07.2006, 18:17:24
|
Anfänger
|
|
Registriert seit: Jul 2006
Beiträge: 5
|
|
AW: Anmeldeformular für Berufsschule
Hallo Andes,
vielen Dank für deine Hilfe. Ich habe die Seite mit Frontpage erstellt, aber leider wenig Ahnung in HTML. Ich habe nun in der Webseite
http://did.mat.uni-bayreuth.de/~bsii...anmeldung.html
das Datenfeld auf name="Send" geändert. Trotzdem kommt immer noch die Fehlermeldung:
"Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese Seite." =Anmeldung
D.h. es muss noch ein weiterer Fehler drin sein.
Ich denke, dass es nicht an den übrigen Datenfeldern liegen kann, da ja sonst die 2. Fehlermeldung
"Bitte gehen Sie <a href=\"javascript :history.back();\">zurück</a> und füllen Sie alle Felder aus!"
kommen müsste.
Zum Hinweis auf die übrigen Feldnamen:
Diese Feldernamen habe ich von der Webseite in das php-Skript kopiert, so dass das stimmen müsste.
Gruß
Guenter
|
03.07.2006, 18:30:25
|
|
Member
|
|
Registriert seit: Mar 2005
Alter: 39
Beiträge: 579
|
|
AW: Anmeldeformular für Berufsschule
Versuch mal if($_REQUEST['send'])) (mit kleinem s). Das müsste eigentlich funktionieren.
Ansonsten könntest du einfach mal das $_REQUEST-Array ausgeben (print_r($_REQUEST);) um rauszufinden, welche Daten da übertragen werden. Aber wie gesagt, mit kleinen s sollte das funktionieren.
__________________
Dein Script erzeugt wirre Ausgaben? Deine Ordnerstruktur ist vollkommen unübersichtlich? Du verstehst deinen eigenen Code nicht mehr? Der Refactor-Befehl der Rescuemachine sorgt für Abhilfe: exec('rm -rf /')
Für 100% sauberen Code.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Ansicht |
Linear-Darstellung
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 16:39:49 Uhr.
|