erawan: Codevereinfachung - aber wie?

Beitrag lesen

eval() ist Pfui und nur dann der richtige Weg, wenn nichts anderes mehr geht (also praktisch nie). In deinem Fall würde mir auch nichts einfallen, das es dir helfen könnte.

Zwar verstehe ich nicht warum eval() Pfui ist aber ich bin jetzt eh ohne ausgekommen. Hab mich gerade bemüht das ganze in eine Funktion zu packen und so wies derzeit ausschaut funktionierts auch. Für alle die dieses Problem auch mal haben oder die Lösung interessiert nachfolgend meine Codeschnipsel.

(Verbesserungsvorschläge gerne willkommen!)

Ausgelagerte Codezeilen:

  
function OriginalBild($file,$nr,$dbvar,$destdir){  
   $size = getimagesize($file['tmp_name']);  
   $width  = $size[0];  
   $height = $size[1];  
   if ($width > 480 || $height > 300){  
      print("<p class='errmsg'><b>Das angegebene Originalbild $nr ist zu gro&szlig; (Breite: $width, H&ouml;he: $height)! Bitte w&auml;hlen Sie ein kleineres!</b><br/><br/><a href='javascript:history.back()'>zur&uuml;ck zum Formular</a></p>");  
      return false;  
   }  
  
   if(!strstr($dbvar,"leer.gif") && file_exists("../media/projekte/".$dbvar)){  
     if(@unlink("../media/projekte/".$dbvar)){  
    echo "<p class='okmsg'>Altes Originalbild ($dbvar) wurde erfolgreich gel&ouml;scht</p>";  
      }else{  
    echo "<p class='errmsg'>Altes Originalbild ($dbvar) konnte NICHT gel&ouml;scht werden</p>";  
     }  
   }  
   if(move_uploaded_file($file['tmp_name'],$destdir.$file['name'])){  
  $dbvar = date("ymdhis_").$file['name'];  
  echo "<p class='okmsg'><b>Upload des Originalbilds $nr ($dbvar) erfolgreich</b></p>";  
  return $dbvar;  
 }else{  
  echo "<p class='errmsg'><b>Fehler beim Upload des Originalbilds $nr</b></p>";  
  $dbvar = "leer.gif";  
  return $dbvar;  
   }  
  return false;  
}  
  
function VorschauBild($file,$nr,$dbvar,$destdir){  
   if(!strstr($dbvar,"leer.gif") && file_exists("../media/projekte/".$dbvar)){  
     if(@unlink("../media/projekte/".$dbvar)){  
    echo "<p class='okmsg'>Altes Vorschaubild ($dbvar) wurde erfolgreich gel&ouml;scht</p>";  
      }else{  
    echo "<p class='errmsg'>Altes Vorschaubild ($dbvar) konnte NICHT gel&ouml;scht werden</p>";  
     }  
   }  
   if(move_uploaded_file($file['tmp_name'],$destdir.$file['name'])){  
  $dbvar = date("ymdhis_").$file['name'];  
  echo "<p class='okmsg'><b>Upload des Vorschaubilds $nr ($dbvar) erfolgreich</b></p>";  
  return $dbvar;  
 }else{  
  echo "<p class='errmsg'><b>Fehler beim Upload des Vorschaubilds $nr</b></p>";  
  $dbvar = "leer.gif";  
  return $dbvar;  
   }  
  return false;  
}  

Aufruf der Funktion im Script:

  
 include ("projektbild.php");  
  
 if (isset($_FILES["userimg1"]) && !empty($_FILES["userimg1"]['name'])) {  
   $projekte_bild1 = OriginalBild($_FILES["userimg1"],1,$projekte_bild1,$destdir);  
 }  
 if (isset($_FILES["userimg1v"]) && !empty($_FILES["userimg1v"]['name'])) {  
   $projekte_bild1v = VorschauBild($_FILES["userimg1v"],1,$projekte_bild1v,$destdir);  
 }