Pas d'erreur lors de la création de zip, mais il n'a pas créées
J'ai écrit ce code pour créer un fichier ZIP et de le sauver. Mais de toute façon il n'a tout simplement pas afficher l'erreur, mais il ne crée pas un fichier ZIP. Voici le code:
$zip = new ZipArchive;
$time = microtime(true);
$res = $zip->open("maps/zips/test_" . $time . ".zip", ZipArchive::CREATE);
if ($res === TRUE) {
echo "RESULT TRUE...";
$zip->addFile("maps/filename.ogz","filename.ogz"); //Sauerbraten map format
$zip->addFromString('how_to_install.txt', 'Some Explanation...');
$zip->close();
$zip_created = true;
echo "FILE ADDED!";
}
Ce que je fais mal, et comment puis-je résoudre ce problème?
Sont les
Avez-vous vérifié que PHP a un accès en écriture sur ce répertoire?
Nooon! 😀 alexn avait raison! Le script n'avait pas suffisamment de droits d'accès... thx pour la résolution. J'avais marquer comme réponse correcte si vous posterais d'ici peu...?
Dans certains cas (ou)
RESULT TRUE
et FILE ADDED
de sortie? Vous êtes à la recherche dans le bon dossier? Avez-vous des rapports d'erreur activé? des questions, des questions 😛Avez-vous vérifié que PHP a un accès en écriture sur ce répertoire?
Nooon! 😀 alexn avait raison! Le script n'avait pas suffisamment de droits d'accès... thx pour la résolution. J'avais marquer comme réponse correcte si vous posterais d'ici peu...?
Dans certains cas (ou)
\ZipArchive::CREATE | \ZipArchive::OVERWRITE
est une solution.OriginalL'auteur Florian Müller | 2011-01-10
Vous devez vous connecter pour publier un commentaire.
Probablement apache ou php n'a pas obtenu les autorisations pour créer des archives zip dans le répertoire. À partir de l'un des commentaires sur ZipArchice::open:
Ajouter une clause else pour votre instruction if et de vidage $res pour voir les résultats:
J'ai fait en sorte que j'ai des autorisations d'écriture pour mes répertoires, cependant la méthode close() me donne de FAUX. Comment dois-je faire? Autres que les autorisations, est-il d'autres possibilités?
OriginalL'auteur alexn
Il y a 2 cas lorsque le zip ne génère pas d'erreur.
un fichier n'est pas disponible lorsque
zip->close
est appelé ensuite l'archiveva échouer et votre fichier zip n'est pas créée.
disposez des autorisations d'écriture zip ne pas signaler l'erreur. Ça va se terminer
mais rien ne sera créé.
Merci, votre option 1 fixe mon problème!
OriginalL'auteur user1720209
Vérifier que chacun de votre fichier existe avant d'appeler $zip->addFile sinon le zip ne seront pas générées et pas de message d'erreur sera affiché.
OriginalL'auteur Pascal Messana
J'ai eu un exactement le même problème, même quand, avec plein d'écriture/lecture des autorisations.
Résolu par la création de la ".zip" fichier manuellement avant de le transmettre à ZipArchive:
Yeeeeea , travaillé , merci beaucoup
OriginalL'auteur Bob
diviser en étapes.
Vérifier le phpinfo pour zip est activé ou pas 🙂
OriginalL'auteur zod
L'une des raisons pour fichier zip n'est pas créé est en raison du manque de vérifier si vous ajoutez un fichier et non pas un répertoire.
J'ai trouvé la solution ici.
OriginalL'auteur Vinaykumar Patel