Portal > Foren > PHP > PHP-Programmierung > Tutorial: Eingabeüberprüfung eines Formulars
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 02.03.2006, 11:47 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 02.03.2006
Beiträge: 1
Standard Tutorial: Eingabeüberprüfung eines Formulars

Zunächst einmal sind die Grafiken bei der Anmeldung ja wirklich ätzend, erst beim dritten Mal hatte ich anscheinend richtig geraten

Naja, zum Thema.
Ich versuche mich grad an der Umsetzung von Bens Tutorial (http://forum.developers-guide.net/showthread.php?t=70), aber es weigert sich mit mir zusammenzuarbeiten. Vielleicht habe ich die Bausteine falsch zusammengesetzt
PHP-Code:
<?php
   
//form.php

   // Session starten
   
session_start();
   
   
// Definition der Schriftfarbe bei inkorrekter Eingabe
   
$cssErrorVorne  '<span style="color:#ff0000;">';
   
$cssErrorHinten '</span>';
   
   
// Array, welches die anzuzeigenden Fehler enthält
   
$_error = array();

   foreach( 
$_SESSION['error'] as $key )
   {
        
$_error[$key]['vorne']  = $cssErrorVorne;
        
$_error[$key]['hinten'] = $cssErrorHinten;
   }

   
printf'<form action="ueberpruefung.php" method="post">

               %sName:%s <input type="text" name="name" value="%s"> //Hier
               %sE-Mail:%s  <input type="text" name="email" value="%s"> //...und hier

               <input type="hidden" name="sent" value="1">
               <input type="submit" name="submit" value="Abschicken">

            </form>'
,
           
$_error['name']['vorne'],
           
$_error['name']['hinten'],
           
$_SESSION['name'],
           
$_error['email']['vorne'],
           
$_error['email']['hinten'],
           
$_SESSION['email'] );
?>
PHP-Code:
<?php
   
//ueberpruefung.php

   // Absicherung, dass die Datei auch über das Formular aufgerufen wurde
   
if( isset($_POST['gesendet']) ) {
       
// Eingabeprüfung
       
       // Session starten
       
session_start();
       
       
$_SESSION['error']  = array();
       
        foreach( 
$_POST as $key => $value )
        {
             
// Ist überhaupt etwas geschrieben worden?
             
if( strcmp(trim($value),'') == )
             {
                 
$_SESSION['error'][] = $key;
             }
             else
             {
                 if( 
strcmp($key,'email') )
                 {
                       
ueberpruefeMail($value);
                 }
                 else
                 {
                       
$_SESSION[$key] = $value;
                 }
             }
        }
        
        if( 
count($_SESSION['error']) > )
        {
             
header'Location: http://localhost/formular.php ' );
             exit();
        }
        else
        {
             
// Hier kann z.B. eine Mail abgeschickt und der User danach zu einer
             // Bestätigungsseite weitergeleitet werden.
             
header'Location: http://localhost/bestaetigung.php' );
             exit();
        }
       
   }
   else
   {
       
header'Location: http://localhost/formular.php' );
       exit();
   }

?>
PHP liefert da
Zitat:
Warning: Invalid argument supplied for foreach() in C:\Programme\xampp\htdocs\form.php on line 13
- das betrifft das foreach in der form.php
UNeverNo ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 02.03.2006, 11:53 Nach oben    #2
Verplanter Benutzer
 
Registriert seit: 14.12.2004
Beiträge: 239
Standard

Der fehler sagt die Variable leer ist oder kein Array so wie ich vermute !
__________________
Das Leben ist zwar bloß ein Adventure-Game, aber die Grafik ist verdammt gut.
Ich such immer noch den Cheat für unlimited money!
DasMööp ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 02.03.2006, 13:39 Nach oben    #3
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.516
Standard

Gib mal ganz vorne in der Datei $_POST aus
PHP-Code:
<?php

    
echo '<pre>';
    
print_r($_POST);
    echo 
'</pre>';

    
// hier der Rest

?>
Grüße Ben.
Ben ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

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 sind an
PingBacks sind an
RefBacks sind aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Java Tutorial interaktiv, von gailer-net.de JavaJim Literatur 1 31.08.2006 15:35
[PHP] Eingabeüberprüfung eines Formulars Ben Tutorials 6 29.01.2006 13:28
kleines feines soap tutorial für php5 robo47 Literatur 5 24.01.2006 16:10
frage zu einem tutorial Steven Gerrard PHP-Programmierung 6 24.01.2006 13:51
Frage zum Tutorial: eigenes Template-System Waldvogel PHP-Programmierung 7 29.12.2005 19:18


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:14 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45