Salut @ tous !

J'utilise le plugin jQuery Uploadify pour uploader des photos sur mon serveur.

Chaque membre a droit à 10 mo d'espace de stockage.
Je vérifie avant le lancement de l'upload si cette limite est atteinte.

Ficher JS :

'onSelect' : function(event, ID, fileObj)
    {
    $.ajax(
        {
        type : 'POST',
        url : 'espace_stockage_dispo.php',
        async : false, // Activer le mode synchorne pour empêcher l'upload avant l'exécution du script PHP
        success : function(msg)
            {
            if(msg == 'erreur')
                {
                alert('Espace de stockage plein !');
                $(this).uploadifyClearQueue();
                }
            }
        });

Fichier espace_stockage_dispo.php :

$poids_rep_photo = calcul_poids_repertoire('../photos/membre_'.$_COOKIE'id_membre_upload'].'/', $recursive = FALSE);
if($poids_rep_photo > $_COOKIE'taille_espace_stockage'])
    {
    echo 'erreur';
    }
else
    {
    echo 'ok';
    }
// -----------------------------------------------------------------------------
function calcul_poids_repertoire($path, $recursive = TRUE)
    {
    $result = 0;
    if(!is_dir($path) || !is_readable($path))
        {
        return 0;
        }
    else
        {
        $fd = dir($path);
        while($file = $fd->read())
            {
            if(($file != ".") && ($file != ".."))
                {
                if(@is_dir("$path/$file/"))
                    {
                    $result += $recursive?DirSize("$path/$file/"):0;
                    }
                else
                    {
                    $result += filesize("$path/$file");
                    }
                }
            }
        $fd->close();
        return $result;
        }
    }

Quand la limite de stockage est atteinte le message "Espace de stockage plein !" s'affiche bien, la progress bar ne s'affiche pas, mais la photo est quand même uploadée !

Je ne comprends pas tout là !
Merci de m'aider...

1 réponse


A toi de vérifier le poid au moment de l'upload et à couper le script sinon