I am not sure, but I have something for you to try.
at the bottom of the functions.php file you will find a line that reads:
if (!function_exists('zip_open')) { include('pclZip.php'); }
Try changing it to
if (!function_exists('zip_open')) { require('pclZip.php'); }
Your PHP apparently does not have zip support. That should have been taken care of by the line above. However, as written there would be no error if the file could not be loaded. The change will give an error. If you get the error, then somehow the pclZip.php file is missing.
ok, replace with
`
function unzip($file, $dir) {
$zip = zip_open($file);
if ($zip) {
while ($zip_entry = zip_read($zip)) {
// Skip non-images in the zip file.
if (!is_image(zip_entry_name($zip_entry))) continue;
if (zip_entry_open($zip, $zip_entry, "r")) {
$buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
$path_file = str_replace("/",DIRECTORY_SEPARATOR, $dir . '/' . zip_entry_name($zip_entry));
$fp = fopen($path_file, "w");
fwrite($fp, $buf);
fclose($fp);
zip_entry_close($zip_entry);
}
}
zip_close($zip);
}
}`
mrco, try this:
replace
`
if (!function_exists('zip_open')) { include('pclZip.php'); }
`
with
`
function unzip($file, $dir)
{ //check if zziplib is installed
if(function_exists('zip_open()'))
{
$zip = zip_open($file);
if ($zip) {
while ($zip_entry = zip_read($zip)) {
// Skip non-images in the zip file.
if (!is_image(zip_entry_name($zip_entry))) continue;
if (zip_entry_open($zip, $zip_entry, "r")) {
$buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
$path_file = str_replace("/",DIRECTORY_SEPARATOR, $dir . '/' . zip_entry_name($zip_entry));
$fp = fopen($path_file, "w");
fwrite($fp, $buf);
fclose($fp);
zip_entry_close($zip_entry);
}
}
zip_close($zip);
}
}else{
// Use Zlib
require_once('pclzip.php');
$zip = new PclZip($file);
if ($zip->extract(PCLZIP_OPT_PATH, $dir, PCLZIP_OPT_REMOVE_ALL_PATH) == 0) {
die("Error : ".$zip->errorInfo(true));
}
}
}
`
The code above should have replaced the require line. Without the require line there should be no inclusion of the pclZIP.php file.
So, you should not have the line if (!function_exists('zip_open')) { include('pclZip.php'); } (or whatever it looks like now.) You should just have the function unzip declaration above.
Download pclzip.lib.php from here: http://www.phpconcept.net/download.php?file=pclzip-2-6.zip
and put the php file from the archive into your zp-core.
Then replace:
`
if (!function_exists('zip_open')) { include('pclZip.php'); }
`
with
`
function unzip($file, $dir)
{ //check if zziplib is installed
if(function_exists('zip_open()'))
{
$zip = zip_open($file);
if ($zip) {
while ($zip_entry = zip_read($zip)) {
// Skip non-images in the zip file.
if (!is_image(zip_entry_name($zip_entry))) continue;
if (zip_entry_open($zip, $zip_entry, "r")) {
$buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
$path_file = str_replace("/",DIRECTORY_SEPARATOR, $dir . '/' . zip_entry_name($zip_entry));
$fp = fopen($path_file, "w");
fwrite($fp, $buf);
fclose($fp);
zip_entry_close($zip_entry);
}
}
zip_close($zip);
}
}else{
// Use Zlib
require_once('pclzip.lib.php');
$zip = new PclZip($file);
if ($zip->extract(PCLZIP_OPT_PATH, $dir, PCLZIP_OPT_REMOVE_ALL_PATH) == 0) {
die("Error : ".$zip->errorInfo(true));
}
}
}
`
I just tried this and it works for me.
I restarted with the original functions.php file and make the changes
I upload the pclzip.lib.php to the zp-core folder
now the error is :
"Fatal error: Cannot redeclare getoption() (previously declared in /home/www/web69/web/zenphoto/zp-core/template-functions.php:1646) in /home/www/web69/web/zenphoto/zp-core/functions.php on line 43"
what do I do wrong ?
I need some rest (it's 1 AM in France)
I talk to you tommorrow
thank you very much
The problem with getoption() sounds like you have mixed files from the 1.1 release with files from the 1.1.1 release. After you are rested (and can think straight again) install again the version 1.1.1 files unchanged and make sure things are working (other than the zip upload).
Then try the suggestion that aitf311 has posted.
The fix will be in the nightly or 1.1.2 if it is released tonight http://zenphoto.org/files/nightly