Seite 2 von 2

Re: Max. Dateianhang-Größe funktioniert nicht

Verfasst: 05.12.2010 16:59
von Crizzo
Diesen Abschnitt kann ich genauso so finden:

Code: Alles auswählen

    /**
    * Performing additional checks
    */
    function additional_checks()
    {
        global $user;

        if (!$this->file_moved)
        {
            return false;
        }

        // Filesize is too big or it's 0 if it was larger than the maxsize in the upload form
        if ($this->upload->max_filesize && ($this->get('filesize') > $this->upload->max_filesize || $this->filesize == 0))
        {
            $max_filesize = get_formatted_filesize($this->upload->max_filesize, false);

            $this->error[] = sprintf($user->lang[$this->upload->error_prefix . 'WRONG_FILESIZE'], $max_filesize['value'], $max_filesize['unit']);

            return false;
        }

        if (!$this->upload->valid_dimensions($this))
        {
            $this->error[] = sprintf($user->lang[$this->upload->error_prefix . 'WRONG_SIZE'], $this->upload->min_width, $this->upload->min_height, $this->upload->max_width, $this->upload->max_height, $this->width, $this->height);

            return false;
        }

        return true;
    }
} 

Re: Max. Dateianhang-Größe funktioniert nicht

Verfasst: 05.12.2010 17:05
von Mahony
Hallo
1. Setze Codeblöcke bitte in BBcode code.

2. Hast du deine Datei mal mit einer original-Datei verglichen (z.b. mit winmerge)?
Unterhalb des von mir angegebenen Codeblocks, gehen die Prüfungen weiter - überprüfe das mal bitte.

Grüße: Mahony

Re: Max. Dateianhang-Größe funktioniert nicht

Verfasst: 05.12.2010 17:06
von Crizzo
@1.: Hab ich doch, war nur kurz in [php] und den gabs nicht, bis ich gesehen hab, dass es mit code=php geht, hats ein wenig gedauert. ;)

@2.: Werde ich mal testen.

Edit:

Hab die kleinen Änderungen in meine Datei übernommen und hochgeladen. Der Selbstversuch danach zeigte, dass es nichts ändert. Sowohl die Größen als auch Abmaßbeschränkungen werden ignoriert. :(

Re: Max. Dateianhang-Größe funktioniert nicht

Verfasst: 05.12.2010 20:08
von gn#36
Als kurzer Hinweis: Moderatoren und Administratoren können die Beschränkung umgehen.

Wer das nicht will sollte in der includes/functions_posting.php das hier

Code: Alles auswählen

 443     // Admins and mods are allowed to exceed the allowed filesize
 444     if (!$auth->acl_get('a_') && !$auth->acl_get('m_', $forum_id))
 445     {
 446         if (!empty($extensions[$file->get('extension')]['max_filesize']))
 447         {
 448             $allowed_filesize = $extensions[$file->get('extension')]['max_filesize'];
 449         }
 450         else
 451         {
 452             $allowed_filesize = ($is_message) ? $config['max_filesize_pm'] : $config['     max_filesize'];
 453         }
 454 
 455         $file->upload->set_max_filesize($allowed_filesize);
 456     }
bearbeiten und das "if" auskommentieren:

Code: Alles auswählen

 443     // Admins and mods are allowed to exceed the allowed filesize
 444     // if (!$auth->acl_get('a_') && !$auth->acl_get('m_', $forum_id))

Re: Max. Dateianhang-Größe funktioniert nicht

Verfasst: 05.12.2010 20:11
von Crizzo
Oh man. Und ich teste mir einen Wolf. Wo mir das aufgefallen ist war ein Moderator, getestet habe ich es als Admin und mit "Berechtigungen übernehmen" kann ich die Sache trotzdem umgehen. Mit einem Test-Account als Registrierter Benutzer geht es nämlich nicht.

Vielen Dank an euch zwo. :)

PS: @gn#36: Dann muss ich aber doch auch die zu dem "if" gehörenden Klammern mit auskommentieren, oder?

So:

Code: Alles auswählen

 // Admins and mods are allowed to exceed the allowed filesize
444     // if (!$auth->acl_get('a_') && !$auth->acl_get('m_', $forum_id))
445     // {
446         if (!empty($extensions[$file->get('extension')]['max_filesize']))
447         {
448             $allowed_filesize = $extensions[$file->get('extension')]['max_filesize'];
449         }
450         else
451         {
452             $allowed_filesize = ($is_message) ? $config['max_filesize_pm'] : $config['     max_filesize'];
453         }
454 
455         $file->upload->set_max_filesize($allowed_filesize);
456    // }

Re: Max. Dateianhang-Größe funktioniert nicht

Verfasst: 05.12.2010 20:16
von gn#36
Nein, eigentlich müsste das auch so gehen. Die Klammern fassen nur Befehle zu einer Gruppe zusammen, das geht auch ohne if davor, genau wie ein if auch ohne Klammern funktioniert, wobei es sich dann natürlich nur auf den nächsten Befehl bezieht.

Wenn nur Admins das ganze umgehen dürfen sollen, dann kannst du auch

Code: Alles auswählen

if (!$auth->acl_get('a_'))
aus der Zeile machen.

Re: Max. Dateianhang-Größe funktioniert nicht

Verfasst: 05.12.2010 20:19
von Crizzo
Gut, dann bist du schlauer in PHP als ich. Hätte das jetzt als Fehler abgestempelt. :)

Aber den Luxus will ich meinen Mods mal lassen, denn immerhin beschränke ich das nur, damit der Server nicht so schnell voll wird und nicht aus Regel-Gründen oder so.