Upload + creation zip

Utilisateur anonyme - 10 nov. 2010 à 22:34
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 - 10 nov. 2010 à 23:47
Bonjour, jai un formulaire :
<form method="POST" enctype="multipart/form-data" action="upload.php">


</form>


Et dans le fichier upload.php :
$name_file = $_FILES['fichier']['name'];
$name1 = '/upload/'.$name_file;
    $content_dir = 'upload/'; // dossier où sera déplacé le fichier
    $tmp_file = $_FILES['fichier']['tmp_name'];
    if( !is_uploaded_file($tmp_file) )
    {exit("Le fichier est introuvable");
    }
    // on copie le fichier dans le dossier de destination
    $name_file = $_FILES['fichier']['name'];
    if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
    {
exit("Impossible de copier le fichier dans $content_dir");
    }
// creation du zip contenant le fichier uploader

require( "zip.lib.php" ) ; //indiquez le chemin d'accès à la lib

     $zip = new zipfile( ) ; //on crée une nouvelle instance zip
     $nom_fichier = $name_file ; //nom du fichier à compresser

     $contenu = $name1; //on enregistre le contenu
     $zip->addfile($contenu, $nom_fichier) ; //on ajoute le fichier
     $archive_zip = $zip->file() ; //on associe l'archive
$rand = rand(1,10000);
$l='upload/'.$rand.'.zip';
    $open = fopen($l , "wb"); //crée le fichier zip
     fwrite($open, $archive_zip); //enregistre le contenu de l'archive
     fclose($open); //ferme l'archive


Dans ce fichier on upload l'image et on creer un archive zip contenant l'image.
imaginons que l'image choisi s'apelle : image.jpg
Cela marche, l'archive marche mais lorque je decompresse l'archive crée, L'image est bien presente mais elle ne s'affiche pas correctement!
Lorque l'image qui etait dans le zip je vue t louvrir avec un bloc note, il est marquer sa : /upload/image.jpg


A l'aideeeeeeeee !

15 réponses

cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
10 nov. 2010 à 23:16
bonsoir

j ai fait

$rand = rand(1,10000);
$l='upload/'.$rand.'.zip';
require("zip.lib.php");
$ziper = new zipfile();
$ziper->addFiles(array($name1));
$ziper->output($l);

ça marche chez moi
0
Utilisateur anonyme
10 nov. 2010 à 23:17
tout sa a la p^lace du code pour creer le zip ?
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
10 nov. 2010 à 23:20
voila comment se présente mon fichier upload par rapport à l'autre ...
<?php
$name_file = $_FILES['fichier']['name'];
$name1 = '/upload/'.$name_file;
$content_dir = 'upload/'; // dossier où sera déplacé le fichier
$tmp_file = $_FILES['fichier']['tmp_name'];
if( !is_uploaded_file($tmp_file) )
{exit("Le fichier est introuvable");
}
// on copie le fichier dans le dossier de destination
$name_file = $_FILES['fichier']['name'];
if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
{
exit("Impossible de copier le fichier dans $content_dir");
}

$rand = rand(1,10000);
$l='upload/'.$rand.'.zip';
require("zip.lib.php");
$ziper = new zipfile();
$ziper->addFiles(array($name1));
$ziper->output($l);

?>
0
Utilisateur anonyme
10 nov. 2010 à 23:25
J'ai uneerreur ...
Fatal error: Call to undefined method zipfile::addFiles()
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
10 nov. 2010 à 23:26
ta class zip.lib.php
on a peu etre pas la même ?
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
10 nov. 2010 à 23:28
0
Utilisateur anonyme
10 nov. 2010 à 23:28
Cher pass ...Cest celle la :
lien de telecharger :
http://www.wakdev.com/contents/files/ziplib.zip
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
10 nov. 2010 à 23:34
prend l'autre et teste voir pas de prob chez moi ...
0
Utilisateur anonyme
10 nov. 2010 à 23:37
Quelle autre ?
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
10 nov. 2010 à 23:39
aprés un coup d'oeil rapide les deux class ne sont pas identiques ...
dans celle que je te propose il y a déja une méthode

function output($file)
{
$fp=fopen($file,"w");
fwrite($fp,$this->file());
fclose($fp);
}
0
Utilisateur anonyme
10 nov. 2010 à 23:41
Dans ma classe, jai rajouter ta fonction, marche pas !
0
Utilisateur anonyme
10 nov. 2010 à 23:42
donne moi le lien de telechargement de ta classe
0
Utilisateur anonyme
10 nov. 2010 à 23:45
Mais Cela marche, l'archive marche mais lorsque je decompresse l'archive crée, L'image est bien presente mais elle ne s'affiche pas correctement!
Lorque l'image qui etait dans le zip je veut louvrir avec un bloc note, il est marquer sa : /upload/image.jpg
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
10 nov. 2010 à 23:46
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
10 nov. 2010 à 23:47
0
Rejoignez-nous