IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Décompression d'un fichier zip


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 99
    Par défaut Décompression d'un fichier zip
    Bonjour à tous,

    Alors voilà je dois uploader un dossier sur mon serveur.

    J'ai donc choisis d'uploader un fichier .zip puis de le décompresser une fois sur le serveur.

    Voilà mon code actuelle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $zip = new ZipArchive;
                        if ($zip->open($fichier) === TRUE) {
                            $zip->extractTo($dossier);
                            $zip->close();
                            echo 'Dézip réussis';
                        } else {
                            echo 'Echec dézip ! ';
                        }
    $fichier viens de là et contient le nom de mon fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $fichier = basename($_FILES['fichier']['name']);
    $dossier contient le nom du répertoir ou il doit être extrait :
    Cette méthode est à la suite d'une méthode pour upload un fichier sur le serveur, d'où la ligne de code avec $_FILES pour ma variable $fichier.

    Mais voilà mon soucis c'est que ça ne marche pas, la page m'affiche "Echec dézip" et je ne comprends pas pourquoi.

    Cela viens t'il de ma variable $fichier ?

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Par défaut
    Tu n'a pas/ ne dois pas utiliser la fonction basename, tu dois laisser le chemin vers le fichier.

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 99
    Par défaut
    D'accord, mais pourtant $fichier contient bien le nom de mon fichier, je dois donc utiliser une autre méthode ?

    Vu qu'il m'est impossible d'utilisé la varaible $fichier, comment puis je procéder pour récupérer dans une variable le lien vers le fichier ?

    Merci d'avance

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Le fichier réellement uploadé c'est $_FILES['tmp_name'].
    $_FILES['name'] ne contient que le nom d'origine.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 99
    Par défaut
    Mais la fonction à besoin du nom du fichier nom ? (J'ai n'ai qu'une seule fois le fichier dans mon répertoire)

    Sinon, je peux passer le dans une variable ou pas ?

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Oui enfin $_FILES['fichier']['tmp_name'].
    Pour être plus clair, PHP donne un nom aleatoire au fichier uploadé ; $_FILES['fichier']['tmp_name'] est le chemin complet vers ce fichier.
    $_FILES['fichier']['name'] contient uniquement le nom qu'avait le fichier à l'origine.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Décompresser des fichiers ZIP de plus de 35 Mo
    Par Général03 dans le forum Langage
    Réponses: 3
    Dernier message: 15/03/2010, 10h03
  2. Comment décompresser un fichier Zip ?
    Par binocle100 dans le forum Débuter
    Réponses: 4
    Dernier message: 04/03/2010, 08h22
  3. Compresser et Décompresser un fichier ZIP
    Par AAWOOPY56 dans le forum AIX
    Réponses: 1
    Dernier message: 16/02/2010, 14h32
  4. Comment décompresser un fichier zip
    Par michel71 dans le forum Débuter
    Réponses: 11
    Dernier message: 20/01/2010, 13h21
  5. Réponses: 1
    Dernier message: 10/02/2009, 17h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo