[ djblade @ 28.04.2006. 17:27 ] @
imali iko primjer kako ovo da uradim. gledao sam na php.net ali nije dovoljno znaci trebami da fajlovi budu odzippovani u folderu gdje se nalazi sam zip file. unaprijed hvala |
[ djblade @ 28.04.2006. 17:27 ] @
[ w3bl0rd @ 28.04.2006. 18:48 ] @
http://www.php.net/manual/en/ref.zip.php
ne znam što je tu nejasno još dolje ispod imaš komentare i vidiš i sam da ljudi tu postuju i primjere i sve o tome tak da ne znam kaj nije jasno... [ SmilieBG @ 28.04.2006. 19:10 ] @
obrati paznju na 2 stvari koje stoje na php.net
1. da mora biti compilirano uz php; 2. Note: Zip support before PHP 4.1.0 is experimental. This section reflects the Zip extension as it exists in PHP 4.1.0 and later. Ja licno koristim exec(), ali opet, moja masina... :) Poz, Sale [ djblade @ 30.04.2006. 02:16 ] @
pogledao sam kodove na php.net
nema nista nejasno tu. interesuje me samo dje cu da stavim(extraktujem) zip-1.3.1.tgz. i sta nakon toga. trebali jos neka konfiguracija ili sta? hvala puno [ Nemanja Avramović @ 30.04.2006. 08:43 ] @
Pa to je valjda tarball a ne zip arhiva (edit) popularno nazvana targuzovan fajl/folder
![]() [Ovu poruku je menjao JaHvram dana 30.04.2006. u 09:45 GMT+1] [ SmilieBG @ 30.04.2006. 10:20 ] @
Pa ako vec nije, trebas da kopajliras uz php... Nije toliko bitno gde ce stajati...
Poz, Sale [ djblade @ 30.04.2006. 13:06 ] @
dobro znam da smaram
ali kako da kompajliram. mozel malo detaljnije. pretpostavite da sam glup pa probajte objasniti :D pozdrav [ SmilieBG @ 30.04.2006. 13:58 ] @
uf :(
Ajde vise detalja... Jel tvoj (kucni) server ili imas hosting negde ili ...? Sta tacno hoces da postignes? Verziju PHP-a koja je instalirana, sa svim opcijama... Poz, Sale [ djblade @ 30.04.2006. 16:22 ] @
:D
ma ja kucni je server. PHP Version 5.0.5 zip Zip support enabled zlib ZLib Support enabled Compiled Version 1.2.3 Linked Version 1.2.3 Directive Local Value Master Value zlib.output_compression Off Off zlib.output_compression_level -1 -1 zlib.output_handler no value no value PHP Core Directive Local Value Master Value allow_call_time_pass_reference On On allow_url_fopen On On always_populate_raw_post_data Off Off arg_separator.input & & arg_separator.output & & asp_tags Off Off auto_append_file no value no value auto_globals_jit On On auto_prepend_file no value no value browscap C:\Program Files\xampp\php\browscap\browscap.ini C:\Program Files\xampp\php\browscap\browscap.ini default_charset no value no value default_mimetype text/html text/html define_syslog_variables Off Off disable_classes no value no value disable_functions no value no value display_errors On On display_startup_errors Off Off doc_root no value no value docref_ext no value no value docref_root no value no value enable_dl On On error_append_string no value no value error_log no value no value error_prepend_string no value no value error_reporting 2039 2039 expose_php On On extension_dir C:\Program Files\xampp\php\ext\ C:\Program Files\xampp\php\ext\ file_uploads On On highlight.bg #FFFFFF #FFFFFF highlight.comment #FF8000 #FF8000 highlight.default #0000BB #0000BB highlight.html #000000 #000000 highlight.keyword #007700 #007700 highlight.string #DD0000 #DD0000 html_errors On On ignore_repeated_errors Off Off ignore_repeated_source Off Off ignore_user_abort Off Off implicit_flush Off Off include_path .;C:\Program Files\xampp\php\pear\ .;C:\Program Files\xampp\php\pear\ log_errors Off Off log_errors_max_len 1024 1024 magic_quotes_gpc On On magic_quotes_runtime Off Off magic_quotes_sybase Off Off mail.force_extra_parameters no value no value max_execution_time 60 60 max_input_time 60 60 open_basedir no value no value output_buffering no value no value output_handler no value no value post_max_size 16M 16M precision 12 12 register_argc_argv On On register_globals On On register_long_arrays On On report_memleaks On On report_zend_debug On On safe_mode Off Off safe_mode_exec_dir no value no value safe_mode_gid Off Off safe_mode_include_dir no value no value sendmail_from no value no value sendmail_path no value no value serialize_precision 100 100 short_open_tag On On SMTP localhost localhost smtp_port 25 25 sql.safe_mode Off Off track_errors Off Off unserialize_callback_func no value no value upload_max_filesize 16M 16M upload_tmp_dir C:\Program Files\xampp\tmp C:\Program Files\xampp\tmp user_dir no value no value variables_order EGPCS EGPCS xmlrpc_error_number 0 0 xmlrpc_errors Off Off y2k_compliance On On zend.ze1_compatibility_mode Off Off napravio sam jednu web galeriju. napravio sam upload fileova. zelim da kad uploadujem jedan zip file(sa slikama) pokrenem skriptu i ona extraktuje sve iz tog zip file tako da galerija moze odma da uzima slike. koristim sljedecu skriptu za extraktovanje koja uredno radi na web serveru (ne kucnom) <?php function unzip($dir, $file, $verbose = 0) { $dir_path = "$dir$file"; $zip_path = "$dir$file.zip"; $ERROR_MSGS[0] = "OK"; $ERROR_MSGS[1] = "Zip path $zip_path doesn't exists."; $ERROR_MSGS[2] = "Directory $dir_path for unzip the pack already exists, impossible continue."; $ERROR_MSGS[3] = "Error while opening the $zip_path file."; $ERROR = 0; if (file_exists($zip_path)) { if (!file_exists($dir_path)) { mkdir($dir_path); if (($link = zip_open($zip_path))) { while (($zip_entry = zip_read($link)) && (!$ERROR)) { if (zip_entry_open($link, $zip_entry, "r")) { $data = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); $dir_name = dirname(zip_entry_name($zip_entry)); $name = zip_entry_name($zip_entry); if ($name[strlen($name)-1] == '/') { $base = "$dir_path/"; foreach ( explode("/", $name) as $k) { $base .= "$k/"; if (!file_exists($base)) mkdir($base); } } else { $name = "$dir_path/$name"; if ($verbose) echo "extracting: $name<br>"; $stream = fopen($name, "w"); fwrite($stream, $data); } zip_entry_close($zip_entry); } else $ERROR = 4; } zip_close($link); } else $ERROR = "3"; } else $ERROR = 2; } else $ERROR = 1; return $ERROR_MSGS[$ERROR]; } $error = unzip("./", "test", 1); echo $error; ?> hvala puno pozdrav [Ovu poruku je menjao djblade dana 30.04.2006. u 17:22 GMT+1] [ SmilieBG @ 30.04.2006. 17:26 ] @
koliko vidim:
zip Zip support enabled php vec ima zip support enabled. Pod pretpostavkom da imas instaliran zip na kompu, ne moras nista vise da 'cackas' sem da programiras :) Poz, Sale PS. ako ti izbacuje gresku, reci i koju :) [ djblade @ 30.04.2006. 18:50 ] @
evo greske koju mi izbaci
Warning: zip_open() [function.zip-open]: Cannot open zip archive ./fotos.zip in C:\Program Files\xampp\htdocs\engram\zip.php on line 20 Error while opening the ./fotos.zip file. file je tu.ne znam zasto ga nece otvoriti?!?!? sve ovo isto na drugom serveru funkcionise pozdrav [ SmilieBG @ 30.04.2006. 20:39 ] @
pa znas kako, ja bi rekao da:
./fotos.zip ne postoji ocito radis na windows sistemu, a windows se ne snalazi sa direktorijumom ./ :) prema tome, promeni u skripti koji fajl i gde da unzipuje ;) Poz, Sale [ djblade @ 30.04.2006. 21:09 ] @
Citat: SmilieBG: pa znas kako, ja bi rekao da: ./fotos.zip ne postoji ocito radis na windows sistemu, a windows se ne snalazi sa direktorijumom ./ :) prema tome, promeni u skripti koji fajl i gde da unzipuje ;) Poz, Sale upravu si uradih to al opet Warning: zip_open() [function.zip-open]: Cannot open zip archive fotos.zip in C:\Program Files\xampp\htdocs\engram\zip.php on line 23 Error while opening the fotos.zip file.copy OK :( za poludit [ SmilieBG @ 30.04.2006. 21:48 ] @
daj onda deo koda gde unzipujes sa php-om...
Poz, Sale [ djblade @ 01.05.2006. 12:50 ] @
evo ga :D
<?php function unzip($dir, $file, $verbose = 0) { $dir_path = "$dir$file"; $zip_path = "$dir$file.zip"; if(copy ("index.php", "fotos/index.php")) echo "copy OK"; $ERROR_MSGS[0] = "OK"; $ERROR_MSGS[1] = "Zip path $zip_path doesn't exists."; $ERROR_MSGS[2] = "Directory $dir_path for unzip the pack already exists, impossible continue."; $ERROR_MSGS[3] = "Error while opening the $zip_path file."; $ERROR = 0; if (file_exists($zip_path)) { if (!file_exists($dir_path)) { mkdir($dir_path); if (($link = zip_open($zip_path))) { while (($zip_entry = zip_read($link)) && (!$ERROR)) { if (zip_entry_open($link, $zip_entry, "r")) { $data = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); $dir_name = dirname(zip_entry_name($zip_entry)); $name = zip_entry_name($zip_entry); if ($name[strlen($name)-1] == '/') { $base = "$dir_path/"; foreach ( explode("/", $name) as $k) { $base .= "$k/"; if (!file_exists($base)) mkdir($base); } } else { $name = "$dir_path/$name"; if ($verbose) echo "extracting: $name<br>"; $stream = fopen($name, "w"); fwrite($stream, $data); } zip_entry_close($zip_entry); } else $ERROR = 4; } zip_close($link); } else $ERROR = "3"; } else $ERROR = 2; } else $ERROR = 1; return $ERROR_MSGS[$ERROR]; } $error = unzip("", "fotos", 1); echo $error; if(copy ("index.php", "fotos/index.php")) echo "copy OK"; ?> pozdrav i hvala ;) [ SmilieBG @ 01.05.2006. 12:57 ] @
koje su vrednosti za:
$dir_path = "$dir$file"; $zip_path = "$dir$file.zip"; ? Poz, Sale [ djblade @ 01.05.2006. 18:19 ] @
$error = unzip("", "fotos", 1);
pozdrav [ SmilieBG @ 01.05.2006. 18:31 ] @
Ajde drugacije da se izjasnim:
if (zip_entry_open($link, $zip_entry, "r")) ne moze da otvori .zip jer mu verovatno ti govoris: fajl.zip se nalazi levo, a skripta trazi desno... :-) Poz, Sale [ w3bl0rd @ 10.05.2006. 10:49 ] @
a da sva stvar nije možda do permisije fajla?
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|