J'ai un simple code PHP qui copie un fichier zip d'une URL distante au serveur, puis l'extrait dans un autre dossier.Script PHP ne pas télécharger un flux de produit zippé à partir d'URL - Le téléchargement fonctionne bien sur le navigateur
function extract_remote_zip($new_file_loc, $tmp_file_loc, $zip_url) {
echo 'Copying Zip to local....<br>';
//copy file to local
if (!copy($zip_url, $tmp_file_loc)) {
echo "failed to copy zip from".$zip_url."...";
}
//unzip
$zip = new ZipArchive;
$res = $zip->open($tmp_file_loc);
if ($res === TRUE) {
echo 'Extracting Zip....<br>';
if(! $zip->extractTo($new_file_loc)){
echo 'Couldnt extract!<br>';
}
$zip->close();
echo 'Deleting local copy....<br>';
unlink($tmp_file_loc);
return 1;
} else {
echo 'Failed to open tmp zip!<br>';
return 0;
}
}
Il fonctionne parfaitement avec une URL de Awin et télécharge et extrait le zip 600kb correct, mais avec un autre de Webgains il télécharge juste un fichier Zip avec la taille de 0 octets. Je suppose que le téléchargement est corrompu quelque part?
Lorsque je visite l'URL sur mon navigateur, il télécharge le zip parfaitement (la taille est d'environ 3 Mo). Je ne peux tout simplement pas le télécharger avec PHP.
Aidez s'il vous plaît!
Il a fonctionné! Merci beaucoup! J'ai vraiment besoin d'apprendre à utiliser cURL! –