Hm ok das hab ich jetz verstanden nur wie komm ich an eval ran und kann so schaden verursachen? Das ist mir immer noch nicht begreiflich. ;(


Hab grade festgestellt das der Upload irgendwie nicht geht aber ich habe keinen Plan warum. -.-

Hier mal der Code:
PHP-Code:
$content =         "<p class=\"read\">".$lang['fake_rules']."! </p>";
$verz =         "gallery";
$info =         getimagesize($_FILES['file']['tmp_name']);
$filesize =     filesize($_FILES['file']['tmp_name']);
$form1 =         "\n<form enctype=\"multipart/form-data\" action=\"?main=add&amp;insert=true\" method=\"post\">";
$form2 =         "</form>";

    if (isset(
$_GET['insert']) == "true")
    {
        if (
== $info[2] OR == $info[2])
        {
            if (
40960 >= $filesize)
            {
                if (
move_uploaded_file($_FILES['file']['tmp_name'],$verz."/".$_FILES['file']['name']) AND entry($_GET['insert']) == "true")
                {
                    
$query "INSERT INTO ".$pref."fake (
                                    fake,
                                    faker,
                                    befake,
                                    password
                                ) 
                                VALUES (
                                    '"
.$_FILES['file']['name']."',
                                    '"
.$_POST['faker']."',
                                    '"
.$_POST['befake']."',
                                    '"
.md5($_POST['password'])."'
                                );"
;
                    
$sql mysql_query($query) or die(mysql_error());
                    
                    if (
sql$content =
                        
"<p class=\"success\">".$lang['fake_upload_success']." <br />
                        - <a href=\"gallery/"
.$_FILES['file']['name']."\">".$_FILES['file']['name']."</a></p> \n
                        <p class=\"success\">"
.$lang['fake_new_success']."! </p>";
                }
                elseif (!
is_uploaded_file($_FILES['file']['tmp_name']))
                {                
                    
$content "<p class=\"error\">".$lang['fake_upload_failed']."! </p>";
                }
            }
            else 
$content "<p class=\"error\">".$lang['fake_badfile']."! </p>";
        }
        else 
$content "<p class=\"error\">".$lang['fake_badfile']."! ".$info[2]." -- ".$filesize."</p>";
    }

eval(
"\$content .= \"".gettemplate("style/fake_new")."\";");
        
$htm_content =     $form1;
$htm_content .= $content;
$htm_content .= $form2
Er gibt auch nichts ueber $info[2] und $filesize aus. -.-
Irgendwie hab ich da nen Brett vorm Kopf.