Nejste přihlášeni
Stránky 1
Offline
Aha takto, hmm no to si myslím že skôr budeš musieť naprogramovať, ja sám také nemám, update stránky moc nepotrebujem, lebo verzie CMS nerastu denno denne. Ale isto to zvládneš i sám, rozbalovací skript už je na tomto fóre a už len doň pridať presnú cestu čo má rozbaliť a už len cron naň nastavíš a je to.
Offline
Offline
No teda aby som s právne chápal, ti uploadneš na FTP aktualizáciu celého webu v nejakom povedzme ZIP súbore, tak v tom prípade treba časť ktorá sa zobrazuje vymazať a ponechať len rozbalovací mechanizmus a nastaviť aký archív sa má rozbaliť. Následne ten skript dáš do cronu a vždy v daný čas zvolený zip súbor rozbalí.
Offline
Offline
Offline
<?php
$file = "subornarozbalenie.zip"
if (unzip($file))
{
// sem zadaj napr funkciu na odoslanie mailu ak sa archív rozbalí
}
else
{
// sem zadaj napr funkciu na odoslanie mailu ak sa rozbalenie archívu NEpodarí
}
function unzip($src_file, $dest_dir=true, $create_zip_name_dir=true, $overwrite=true)
{
if(function_exists("zip_open")) {
if(!is_resource(zip_open($src_file))) {
$src_file=dirname($_SERVER['SCRIPT_FILENAME'])."/".$src_file;
}
if (is_resource($zip = zip_open($src_file))) {
$splitter = ($create_zip_name_dir === true) ? "." : "/";
if ($dest_dir === false)
$dest_dir = substr($src_file, 0, strrpos($src_file, $splitter))."/";
else
$dest_dir = "";
create_dirs($dest_dir);
while ($zip_entry = zip_read($zip)) {
$pos_last_slash = strrpos(zip_entry_name($zip_entry), "/");
if ($pos_last_slash !== false) {
create_dirs($dest_dir.substr(zip_entry_name($zip_entry), 0, $pos_last_slash+1));
}
if (zip_entry_open($zip,$zip_entry,"r")) {
$file_name = $dest_dir.zip_entry_name($zip_entry);
if ($overwrite === true || $overwrite === false && !is_file($file_name)) {
$fstream = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
if(!is_dir($file_name))
file_put_contents($file_name, $fstream );
if(file_exists($file_name)) {
chmod($file_name, 0777);
$results[] = array($file_name, true);
}
else {
$results[] = array($file_name, false);
}
}
zip_entry_close($zip_entry);
}
}
zip_close($zip);
if ($msg_type == 'ok') return true; else return false;
}
else {
return false;
}
return true;
}
}
function create_dirs($path)
{
if (!is_dir($path)) {
$directory_path = "";
$directories = explode("/",$path);
array_pop($directories);
foreach($directories as $directory) {
$directory_path .= $directory."/";
if (!is_dir($directory_path)) {
mkdir($directory_path);
chmod($directory_path, 0777);
}
}
}
}
?>
netestoval som to, len som upravil pôvodný súbor unzip.php
Offline
Offline
Offline
Upravil som ti teda ten súbor aby si vydeľ textový výsledok. Žiaľ rozbaľovanie zlyhá, lebo zrejme ten súbor .zip je balený aj s kompresiou. Musíš ho baliť cez total commander a bez kompresie inak sa nerozbalí.
Offline
Offline
Stránky 1