php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.06.2008, 06:48  
Kein Genie
Gast
 
Beiträge: n/a
Standard Fehler zurückschicken

Hi,

ich habe ein Problem, und zwar gibt es ein Script wo sich der User anmelden kann (kein Login, sondern registrieren).
Dann wird das Formular abgeschickt an die Datei save.php.
Jetzt will ich da überprüfen, ob es Fehler gibt, wenn ja will ich das die Fehler zurück geschick werden und zwar nicht nur einfach error=ok sondern genau die Fehler die es gibt, damit ich beim Formular die ausgeben kann.

Ist sowas möglich, wenn ja wie?
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 10.06.2008, 07:25  
Erfahrener Benutzer
 
Registriert seit: 03.11.2004
Beiträge: 289
rbs_phoenix
rbs_phoenix eine Nachricht über ICQ schicken
Standard

schickst du die daten denn per <form action="save.php"> ab?? wenn ja, müsstest du diese von der save.php wieder laden (oder vlt includen). Und die Fehler kannst du ja in ein array packen. Aber:
1. Warum machst du nicht alles in eine Datei?? oder
2. Warum lässt du dir nicht die Fehler von der save.php ausgeben??

Wenn du anzeigen lassen willst, wo und welcher Fehler aufgetreten ist, kannst du doch in den oberen Bereich der register.php die Überprüfung und den Eintrag und alles machen, und wenn ein Value in dem Array ist, lässt du das Formular nochmal anzeigen, bloß mit den Fehlermeldungen dahinter (Würde dann aber noch die vorher eingegebenen Angaben reinmachen).


Also so würde ich es machen
__________________
Homepage: http://www.rbs-page.de
rbs_phoenix ist offline  
Alt 10.06.2008, 10:35  
Kein Genie
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von rbs_phoenix
schickst du die daten denn per <form action="save.php"> ab?? wenn ja, müsstest du diese von der save.php wieder laden (oder vlt includen). Und die Fehler kannst du ja in ein array packen. Aber:
1. Warum machst du nicht alles in eine Datei?? oder
2. Warum lässt du dir nicht die Fehler von der save.php ausgeben??

Wenn du anzeigen lassen willst, wo und welcher Fehler aufgetreten ist, kannst du doch in den oberen Bereich der register.php die Überprüfung und den Eintrag und alles machen, und wenn ein Value in dem Array ist, lässt du das Formular nochmal anzeigen, bloß mit den Fehlermeldungen dahinter (Würde dann aber noch die vorher eingegebenen Angaben reinmachen).


Also so würde ich es machen
Hatte überlegt erst mit JS die Daten zu kontrollieren.
Aber da ist mein Problem, dass ich nicht weiß wie ich da die Daten weiter egbe an save.php wenn keine Fehler sind.
 
Alt 10.06.2008, 11:06  
Erfahrener Benutzer
 
Registriert seit: 03.11.2004
Beiträge: 289
rbs_phoenix
rbs_phoenix eine Nachricht über ICQ schicken
Standard

bei meinem News-System wird überprüft, ob alle Felder einen Inhalt haben. Dazu musst du bei dem form-Tag folgendes schreiben:


Code:
<form action="save.php" method="post" name="post" onSubmit="return chkFormular()">
und der js-Teil sieht dann so aus (am besten i.wo dadrüber schreiben:

Code:
<script language="JavaScript" type="text/javascript">
<!--
function chkFormular() {
	if(document.post.textfeld1.value == "") {
		alert("You have to enter a headline!");
		document.post.headline1.focus();
   		return false;
	}

	if(document.post.message.value == "") {
		alert("You have to enter text!");
		document.post.message.focus();
   		return false;
	}
}
-->
</script>
Also guckt er, ob dort ein Feld nicht ausgegeben wird und wenn es leer ist, kommt eine Alert-Box, wo du dann OK klicken musst und dann wird das Textfeld gleich ausgewählt. Aber wenn du es mit Javascript machen willst, würde ich vorschlagen, dass du es ins Javascript-Board schreibst. 1. Da haben die mehr Ahnung als ich^^ und 2. Hat es dann ja mehr mit JS als mit PHP zutun.
__________________
Homepage: http://www.rbs-page.de
rbs_phoenix ist offline  
Alt 10.06.2008, 11:33  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Ich sehe immer noch nicht genau, wo dein problem ist, habe auch noch nichts von deinem Code gesehen. Hier einfach etwas Pseudocode, wie das etwa aussehen könnte:
PHP-Code:
<?php
if (isset($abgeschickt)){
    
$fehler = array();
    
$ok true;
    foreach (
$eingabefelder as $feld){
        if (empty(
$feld)){
            
$fehler[] = "$feld ist nicht ausgef&uuml;llt";
            
$ok false;
        }
        elseif(
is_ungültig($feld)){
            
$fehler[] = "$feld ist nicht enth&auml;lt Fehler";
            
$ok false;
        }
    }
    if (
$ok){ // alles ok
        // Daten in DB oder Session speichern
        
header("Location: www.devil.com"); // Weiterleitung auf nächste Seite
    
}
}
if (isset(
$fehler) && count($fehler 0)){
    foreach (
$fehler as $msg){
        echo 
"$msg
"
;        // Fehlermeldungen ausgeben
    
}
}
echo 
"<form method='post' action='" $_SERVER['PHP_SELF'] . "'>";
echo 
alle deine Formularfelder
echo "<input type='hidden' name='abgeschickt' />
      <input type='submit' name='go' />\n"
;
echo 
"</form>";
?>
Alternativ kannst du natürlich die Fehlermeldungen in einen assitiativen Array schreiben (key = Feldnamen=, und dann direkt beim entsprechenden Feld ausgeben.
__________________
Gruss
L
lazydog ist offline  
Alt 10.06.2008, 16:31  
Kein Genie
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von lazydog
Ich sehe immer noch nicht genau, wo dein problem ist, habe auch noch nichts von deinem Code gesehen. Hier einfach etwas Pseudocode, wie das etwa aussehen könnte:
PHP-Code:
<?php
if (isset($abgeschickt)){
    
$fehler = array();
    
$ok true;
    foreach (
$eingabefelder as $feld){
        if (empty(
$feld)){
            
$fehler[] = "$feld ist nicht ausgef&uuml;llt";
            
$ok false;
        }
        elseif(
is_ungültig($feld)){
            
$fehler[] = "$feld ist nicht enth&auml;lt Fehler";
            
$ok false;
        }
    }
    if (
$ok){ // alles ok
        // Daten in DB oder Session speichern
        
header("Location: www.devil.com"); // Weiterleitung auf nächste Seite
    
}
}
if (isset(
$fehler) && count($fehler 0)){
    foreach (
$fehler as $msg){
        echo 
"$msg
"
;        // Fehlermeldungen ausgeben
    
}
}
echo 
"<form method='post' action='" $_SERVER['PHP_SELF'] . "'>";
echo 
alle deine Formularfelder
echo "<input type='hidden' name='abgeschickt' />
      <input type='submit' name='go' />\n"
;
echo 
"</form>";
?>
Alternativ kannst du natürlich die Fehlermeldungen in einen assitiativen Array schreiben (key = Feldnamen=, und dann direkt beim entsprechenden Feld ausgeben.
Das Problem hierbei ist, header klappt nicht, da du unten daten schon ausgibts!
 
Alt 10.06.2008, 16:32  
Kein Genie
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von lazydog
Ich sehe immer noch nicht genau, wo dein problem ist, habe auch noch nichts von deinem Code gesehen. Hier einfach etwas Pseudocode, wie das etwa aussehen könnte:
PHP-Code:
<?php
if (isset($abgeschickt)){
    
$fehler = array();
    
$ok true;
    foreach (
$eingabefelder as $feld){
        if (empty(
$feld)){
            
$fehler[] = "$feld ist nicht ausgef&uuml;llt";
            
$ok false;
        }
        elseif(
is_ungültig($feld)){
            
$fehler[] = "$feld ist nicht enth&auml;lt Fehler";
            
$ok false;
        }
    }
    if (
$ok){ // alles ok
        // Daten in DB oder Session speichern
        
header("Location: www.devil.com"); // Weiterleitung auf nächste Seite
    
}
}
if (isset(
$fehler) && count($fehler 0)){
    foreach (
$fehler as $msg){
        echo 
"$msg
"
;        // Fehlermeldungen ausgeben
    
}
}
echo 
"<form method='post' action='" $_SERVER['PHP_SELF'] . "'>";
echo 
alle deine Formularfelder
echo "<input type='hidden' name='abgeschickt' />
      <input type='submit' name='go' />\n"
;
echo 
"</form>";
?>
Alternativ kannst du natürlich die Fehlermeldungen in einen assitiativen Array schreiben (key = Feldnamen=, und dann direkt beim entsprechenden Feld ausgeben.
Das Problem hierbei ist, header klappt nicht, da du unten daten schon ausgibts!
Aber durch das in die Sessionspeichern, hast du mich auf eine Idee gebracht, danke!
 
Alt 10.06.2008, 16:49  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Kein Genie
Das Problem hierbei ist, header klappt nicht, da du unten daten schon ausgibts!
Quatsch, du kriegst das Formular, schickst es ab. Dann erscheint die Seite erneut, und gibt absolut nichts aus, wenn kein Fehler vorhanden ist. Und nach dem header() wird sowieso nichts mehr ausgegeben, da ist die Seite schon weg.
__________________
Gruss
L
lazydog ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
bitte hilfe! mysql fehler meldung: basicx PHP Tipps 2008 2 22.07.2008 16:36
mysql fehler meldung: basicx Datenbanken 1 22.07.2008 09:48
MySQL- Fehler??? aha_01 PHP Tipps 2008 5 21.09.2007 09:15
[Erledigt] Mysql Syntax Fehler Datenbanken 3 06.07.2006 09:58
[Erledigt] Seite wird nicht angezeigt, untersch. Fehler bei IE/FF/Safar PHP-Fortgeschrittene 19 31.05.2005 14:52
Blöder MySQL Fehler PHP Tipps 2005 3 15.05.2005 03:14
Fehlermeldung - aber kein fehler... Tschuu HTML, Usability und Barrierefreiheit 16 14.03.2005 15:56
Wo liegt der fehler?? PHP-Fortgeschrittene 5 22.12.2004 09:54
[Erledigt] mysql fehler PHP Tipps 2004 2 03.11.2004 00:32
Email prüfen - Fehler sind da....? PHP Tipps 2004 5 20.10.2004 17:35
Hilfe ich finde den Fehler nicht! PHP Tipps 2004 2 07.10.2004 17:40
array_push nur in begrenzter Anzahl ausführen ? PHP Tipps 2004 2 07.09.2004 09:05
mysql_real_escape_string - Fehler Schaelle Datenbanken 0 03.07.2004 23:32
Paradox, Fehler bei Berechnung in MySQL MrNiceGuy Datenbanken 0 23.06.2004 16:09
GDLIB -> Fehler : xxx.jpg is not a valid JPEG file PHP-Fortgeschrittene 11 09.06.2004 22:41

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php formular überprüfen und zurückschicken, html fehlercode zurückschicken, mit php zurücksenden

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:24 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.