Probleme mit Tutorials: Formularverarbeitung mal anders

asdfg

Mitglied
Was ist in diesem Script falsch, bezogen auf das Tutorial:Formularverarbeitung mal anders

Ich möchte nur Daten in meine Tabelle schreiben!

PHP:
<input type="text" name="input[url]" maxlength="10"> 
<input type="text" name="input[name]" maxlength="20"> 
<input type="text" name="input[icon]" maxlength="50"> 
<input type="text" name="input[cat]" maxlength="50"> 
<input type="text" name="input[date]" maxlength="50"> 
<input type="text" name="input[misc]" maxlength="10"> 
<input type="text" name="input[info]" maxlength="30"> 

<?PHP 
$required_input=array('url','name','icon','cat','date','misc','info');  
$input=$_POST['input'];  
$input_ok=array();  
while(list($k,$v)=each($input)){  
    switch($k){  
        'email':  
            alles ok=check_Syntax($v);  
        'url':  
        'name':  
        'icon':  
        'cat': 
        'date': 
        'misc': 
        'info':  
            if(alles ok){  
                $input_ok[]=$k;  
            }  
            break;  
           
    }      
}  

$forgotten_input=array_diff($required_input,$input_ok);  

if(count($forgotten_input)==0){  
    //alles ok      
}else{  
    //zeige Fehlermeldung/-seite  
}  

include 'config.php'; //Verbindungsscript zu meiner Tabelle 

$sql='insert into downloads ('.array_keys($input).') values ('.implode("','",$input).')'; 

if(count($forgotten_input)==0){  
    $sql='insert into downloads ('.array_keys($input).') values ('.implode("','",$input).')';  
    mysql_query($sql,$db_ident);  
}else{  
    //zeige Fehlermeldung/-seite  
}

Ich erhalte den Fehler: Parse error: parse error, expecting `T_CASE' or `T_DEFAULT' or `'}'' in /var/www/html/03/lab/test2.php on line 15
 
Zuletzt bearbeitet:
Ja, aber im Tutorial ist das ja auch nicht so erleutert!

case1: "Wert":, ist das richtig?

Wieso soll ich da ein Doppelpunkt und ein Komma am Schluss setzen?
 
Ich und meine Rechtschreibung ...
Das Komma gehört natürlich nicht dazu :D

Aber der Doppelpunkt schon.
Also so: case "Variablenwert":
anstatt: "Variablenwert":
 
Also ich weiß nicht was du kopiert hast aber an deinem Code ist ca. 50% Müll ;)

Einzelne Elemente von switch werden mit case eingeleitet

Bsp:
PHP:
switch($valiable) {
  case "wert1":
     //mach irgendwas
     break;
  case "wert2":
 .
 .
 .
  default:
}

Und das alles ok sollteste umwandeln in $alles_ok
 
Ja, aber im Tutorial von shockshell steht dass so drin:

PHP:
<? 
$required_input=array('name','str','plz','ort','email'); 
$input=$_POST['input']; 
$input_ok=array(); 
while(list($k,$v)=each($input)){ 
    switch($k){ 
        'email': 
            alles ok=check_Syntax($v); 
        'str': 
        'plz': 
        'name': 
        'ort': 
            if(alles ok){ 
                $input_ok[]=$k; 
            } 
            break; 
            ........... 
    }     
} 
?>

Grundsätzlich habe ich keine Probleme mit Switches ...
 
Ja, vergessen wir diesen Switch, ich weiss ehrlich geschrieben gar nicht, für was ich den brauchen soll. Ich möchte lediglich ein Script schreiben, das ein Formular beinhaltet. Die Daten aus dem Formular möchte ich in einen Array schreiben und dann in einer MySQL Tabelle speichern. Was ist nun zu tun?
 
Zurück