Jump to content

Recommended Posts

How to unzip files on remote server using PHP script.
I tried to like this:


$zip = new ZipArchive;
$res = $zip->open('http://madm.dfki.de/demo/ip-countryside/ip2country.zip');
if ($res === TRUE) {
    $zip->extractTo($_SERVER['DOCUMENT_ROOT'].'/app/webroot/ip2country/');
    $zip->close();
    echo 'ok';
} else {
    echo 'failed, code:' . $res;
}

but, it does not work.

This error occurs:
Unable to access http://madm.dfki.de/demo/ip-countryside/ip2country.zip

How to solve this problem?
 

Try setting the file permission to 744 in your script. 

http://php.net/manual/en/function.chmod.php

 

change it back to 644 or whatever your correct mode is after executing the zip.

Edited by fesan

I don't think it's relating to permissions because I can download the file, so we can assume the issue isn't permission related.

 

As far as I can tell the open method requires a file that's relative to the filesystem. Basically, I don't think it allows you to open files via HTTP, FTP or HTTPS protocols because the class doesn't extend SPLFileObject.

 

I'd suggest trying to store the zip on the server using fopen (http://php.net/manual/en/function.fopen.php) then opening the ZipArchive and clear the tmp file in __destruct method.

Edited by exeTrix
This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.