ERLEDIGT
NEIN
NEIN
ANTWORTEN
27
27
ZUGRIFFE
1920
1920
EMPFEHLEN
-
28.06.10 13:28 #16
- Registriert seit
- Sep 2004
- Ort
- Möglingen (BaWü)
- Beiträge
- 3.109
timestamp hat nur deine "bedenkliche" Schreibweise wie folgt geändert:
Ändere du es nun so das du bei action ="" den Namen deiner Datei einträgst.HTML-Code:<form action="./" method="post">
Er hat dir ja auch dazugeschrieben warum er das gemacht hat ! ! !Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.
Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.
-
Ok, danke! Jetzt funktioniert das mit den Fehlermeldungen schon mal

Allerdings gibt es noch das Problem, dass die schon getätigten Eingaben gelöscht werden, wenn man nicht alle Felder ausgefüllt hat und auf speichern klickt...
-
28.06.10 13:37 #18
- Registriert seit
- Sep 2004
- Ort
- Möglingen (BaWü)
- Beiträge
- 3.109
Kann es sein das du dir immer nur den Code kopierst und bei dir wieder einfügst?
HTML-Code:<p>Name:<br> <input name="Name" value="<?php echo @$_POST['Name']; ?>" size="50" maxlength="150" type="text"> </p> <p>E-Mail-Adresse:<br> <input name="Email" value="<?php echo @$_POST['Email']; ?>" size="50" maxlength="150" type="text"> </p> <p>Beitrag:<br> <textarea name="Beitrag" rows="10" cols="50"><?php echo @$_POST['Beitrag']; ?></textarea> </p>
Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.
Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.
-
Wenn du nicht die index als Formular benutzt, musst du im action attribut den Dateinamen hineinschreiben. Zum Beispiel
HTML-Code:<form action="./meineDatei.php">Bei Problemen mit Codes, postet bitte den entsprechenden Codeausschnitt und setzt den in entsprechende Tags.
( [cpp] [/cpp] [css] [/css] [html] [/html] [java] [/java] [javascript] [/javascript] [php] [/php] [sql] [/sql] )
"Funktioniert nicht" ist keine Fehlermeldung. Bitte eine genaue Fehlerbeschreibung und, wenn vorhanden, Fehlermeldungen posten.
RegEx Tutorial
PHP Funktionsreferenz
-
äähm...sorry, aber wenn ich es selbst könnte, hätte ich mich nicht an ein Forum gewandt...Kann es sein das du dir immer nur den Code kopierst und bei dir wieder einfügst?
-
Bei Problemen mit Codes, postet bitte den entsprechenden Codeausschnitt und setzt den in entsprechende Tags.
( [cpp] [/cpp] [css] [/css] [html] [/html] [java] [/java] [javascript] [/javascript] [php] [/php] [sql] [/sql] )
"Funktioniert nicht" ist keine Fehlermeldung. Bitte eine genaue Fehlerbeschreibung und, wenn vorhanden, Fehlermeldungen posten.
RegEx Tutorial
PHP Funktionsreferenz
-
28.06.10 13:52 #22
- Registriert seit
- Jun 2007
- Ort
- Oldenburg (Niedersachsen)
- Beiträge
- 119
Hi,
hier mal meine Version einer Formular-Verarbeitung :
Gruß, MikePHP-Code:<?php
if (isset($_POST['submit']))
{
$name = $_POST['name']; // vereinfachte Verarbeitung
if ($name == "") { $message = "Keinen Namen angegeben"; }
else
{
// weitere Verarbeitung
$message = "Verarbeitung erfolgreich";
}
}
?>
<form action="deine_datei.php" method="post">
<?php echo $message; ?><br />
<input type="text" name="name" value="<?php echo $name; ?>" /><br />
<input type="submit" name="submit" value="absenden" />
</form>---------------------------------------------------------------------------------
Mike's EEP-Welt
Windows XP 2003, Internet Explorer 6.0, Firefox 2.0
-
Also, jetzt funktioniert alles
Habe die Fehlermeldung noch in eine Box umgewandelt, damit es ein bisschen schöner aussieht (und natürlich um noch ein bisschen Eigeninitiative mit einzubringen, lieber timestamp
)
Hier noch mal ein Code-Beispiel:
Vielen Dank an alle Helfer!PHP-Code:<?php
if (!isset($_POST['Beitrag']) Or Trim($_POST['Beitrag']) == "") {
$fehler = 1;
$fehlertext = "Bitte geben Sie einen Beitrag ein.";
?>
<script type="text/javascript">
alert("<?php echo $fehlertext; ?>");
</script>
<?php
Liebe Grüße
Ich hätte da doch noch mal eine Frage...
Nach der Prüfung und erfolgreichem Speichern des Formulars werden in den Formularfeldern trotzdem noch die eingegebenen Daten angezeigt. Das soll aber eigentlich nicht so sein, da direkt unter dem Formular das Gästebuch inklusive dem neuen Eintrag angezeigt wird.
Ich weiß, dass ich die Variablen einfach überwieder zurücksetzen kann, allerdings klappt es an keiner Stelle des Scriptes, egal, wo ich es einfüge.PHP-Code:$Variable= " ";
Logisch wäre natürlich direkt nach dem Speichern:
Das funktioniert aber leider nichtPHP-Code:<?php
//Wenn kein Fehler: Speichern
if ($fehler == 0) {
$sql = " INSERT INTO gbuch ";
$sql .= " SET ";
$sql .= " Name ='". $_POST['Name'] ."', ";
$sql .= " Email ='". $_POST['Email'] ."', ";
//UTC Zeit festlegen:
date_default_timezone_set('Europe/Berlin');
$sql .= " Datum ='". date("Y-m-d H:i:s") ."', ";
$sql .= " Beitrag='". $_POST['Beitrag'] ."' ";
?>
<script type="text/javascript">
alert("<?php echo "Eintrag gespeichert. Vielen Dank!" ?>");
</script>
<?php
$_POST['Name'] = "";
$_POST['Email'] = "";
$_POST['Beitrag'] = "";
//Zugriff auf die MySQL Datenbank:
$db_link = @mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT);
if ( ! $db_link ){
die('keine Verbindung zur Zeit möglich - später probieren ');
}
$db_sel = mysql_select_db( MYSQL_DATENBANK ) or die("Auswahl der Datenbank fehlgeschlagen");
//Ausführen des mysql-Befehls/Speichern der Daten
$db_erg = mysql_query( $sql );
if ( ! $db_erg ){
die('Ungültige Abfrage: ' . mysql_error());
}
Kann mir jemand helfen?Geändert von Schniko (30.06.10 um 19:08 Uhr)
-
Kann mir wirklich niemand weiterhelfen?
-
Falls die Reihenfolge immernoch so ist wie in den oberen Beiträgen ( erst Formular , dann PHP ) dann ist das doch völlig logisch das das nicht funktionieren kann.
Immerhin schreibst du die Variablen demnach erst in dein Formular und "löschst" sie erst danach.In order to understand recursion, one must first understand recursion.
-
Wenn ich Sie VOR der Ausgabe des Formulars lösche, klappt die Fehlerüberprüfung aber leider nicht mehr und die Variablen werden sofort nach dem Klick auf Speichern gelöscht.
-
Hallo, da noch ein Anfänger bist, wie es schein, noch ein wichtiger Hinweis:
du musst vor der Speicherung der Daten in der Datenbank noch die zu speichernden Daten filtern, da deine Datenbank sonst ein offenes Scheunentor ist.
siehe http://de.wikipedia.org/wiki/SQL-Injection
Das geht mit mysql_real_escape_string(). Kleines Beispiel:
mfgPHP-Code:$sql = "INSERT INTO tabelle (feld1, feld2) VALUES ('".mysql_real_escape_string('wert1')."', '".mysql_real_escape_string('wert2')."');";
Geändert von aGeNET (07.07.10 um 15:13 Uhr) Grund: typo
-
Ich meinte auch eigentlich das du die komplette Reihenfolge eventuell umdrehen solltest.Wenn ich Sie VOR der Ausgabe des Formulars lösche, klappt die Fehlerüberprüfung aber leider nicht mehr und die Variablen werden sofort nach dem Klick auf Speichern gelöscht.
Code :1 2 3 4 5 6 7 8 9
if (Formular abgeschickt){ Formular prüfen if(!fehler){ Formular verarbeiten Formularwerte löschen } } Formular anzeigenIn order to understand recursion, one must first understand recursion.
Ähnliche Themen
-
GET-Eingabe überprüfen
Von Dörti.Hermi im Forum PHPAntworten: 4Letzter Beitrag: 08.02.08, 17:56 -
Formularfelder überprüfen
Von FLASHStyler im Forum Javascript & AjaxAntworten: 1Letzter Beitrag: 05.10.07, 08:02 -
GET eingabe auf URL überprüfen
Von kase im Forum PHPAntworten: 13Letzter Beitrag: 11.08.07, 15:57 -
Formularfelder überprüfen!
Von soa im Forum PHPAntworten: 3Letzter Beitrag: 20.06.05, 00:24 -
3 Formularfelder überprüfen
Von stefanrichardmueller im Forum PHPAntworten: 2Letzter Beitrag: 25.07.04, 23:37






Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren