Bonjour
Je cherche à utiliser 7 Z via php pour zipper et dézipper des fichiers
Quelqu'un a t-il une expérience car j'ai des problèmes de code
Merci
Bonjour
Je cherche à utiliser 7 Z via php pour zipper et dézipper des fichiers
Quelqu'un a t-il une expérience car j'ai des problèmes de code
Merci
Tu peux regarder ça.
non testé.
Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
Mon article sur le P2V, mon article sur le cloud
Consultez nos FAQ : Windows, Linux, Virtualisation
Merci Chtrophe
En fait comme toujours c'est une question bête de syntaxe et sur le net il y a foule de solutions qui ne fonctionnent pas
Voici le code si nécessaire (ne pas oublier le "" au bon endroit
me reste plus qu'à mettre des variables dans le chemin
Code : Sélectionner tout - Visualiser dans une fenêtre à part exec('"C:\Program Files\7-Zip\7z.exe" a -tzip "e:\The Yachter - cours au complet\www\Navire\Plan de voyage\Plan de voyage en cours.zip" "e:\The Yachter - cours au complet\www\Navire\Plan de voyage\Plan de voyage en cours" ');
Et bien pas évident de passer des variables
Quand je fais echo de $commande j'ai exactement la même ligne que l'exec en dur qui est commenté//
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 $Folder = realpath($FolderToZip); $quote="\""; $ext=".zip"; $sp=" "; $exec='"C:\Program Files\7-Zip\7z.exe" a -tzip'; $Folder1 = $quote.$Folder.$ext.$quote; $Folder2 = $quote.$Folder.$quote; //exec('"C:\Program Files\7-Zip\7z.exe" a -tzip "e:\The Yachter - cours au complet\www\Navire\Plan de voyage\Plan de voyage en cours.zip" "e:\The Yachter - cours au complet\www\Navire\Plan de voyage\Plan de voyage en cours" '); echo $commande=$exec.$sp.$Folder1.$sp.$Folder2; exec('$commande'); ?>
Si quelqu'un voit le bug Merci
Bonjour
7-zip étant un logiciel pour Windows et aussi parce qu'il n'est pas forcément installé, pourquoi veux-tu l'utiliser alors qu'Apache dispose d'un module php pour faire cela càd compresser ou décompresser un zip ?
Ci-après un script que j'ai écris il y a plusieurs années et qui fait le job : https://github.com/cavo789/zip_unzip. Peut-être une source d'inspiration ?
Note aussi que je vois que tu tentes d'accéder à un disque e:, est-ce un disque dur local ou réseau ? Dans ce dernier cas, il est aussi possible que le serveur apache ne dispose pas du droit d'accéder à la ressource réseau (l'utilisateur apache n'est pas toi).
Bonne journée
Bonjour Cavo et merci de ta réponse
Je pense avoir testé ton code avec succès sauf qu'il me posait problème car tous les fichiers étaient mis à la racine sans garder la hiérarchie ce qui dans mon cas le rendait inutilisable.
Effectivement le disque E est bien sûr sur le serveur mais pour un autre plus précis c'est une application en localhost
zip fonctionne bien je suis arrivé à ce que je veux
N'hésites pas si tu penses que je peux faire autrement
Partager