login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Zip comrpimeren en Uitpakken

Offline GijsB - 17/04/2009 11:06
Avatar van GijsBNieuw lid Ik heb voor een klant in een systeem een bulk upload gebouwd waarbij een zip geupload moet worden en dan handelt pclzip het verder af (http://www.phpconcept.net/pclzip/index.en.php). Met Zip files gegenereerd door de server heeft het script geen probleem en werkt het perfect. Echter wanneer de klant met 7Zip zijn/haar zip files genereerd kan hij deze niet goed behandelen. Hij slaat daarbij uit uitpak deel over. De rest, zoals bijvoorbeeld na het uitpakken deleten doet hij wel zonder probleem, daarnaast krijg ik geen error bij het script terwijl dat wel moet komen als het uitpakken mislukt. Iemand die weet hoe dit op te lossen is?

10 antwoorden

Gesponsorde links
Offline Rik - 17/04/2009 11:11
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
GijsB schreef:
Echter wanneer de klant met 7Zip zijn/haar zip files genereerd (...)
Wordt er dan wel een zip van gemaakt? 7Zip heeft ook een eigen algoritme dat bestanden met extensie .7z maakt. Het lijkt me niet raar als PclZip die niet uit kan pakken.
Offline GijsB - 17/04/2009 11:29
Avatar van GijsB Nieuw lid
Boukefalos schreef:
[..quote..]Wordt er dan wel een zip van gemaakt? 7Zip heeft ook een eigen algoritme dat bestanden met extensie .7z maakt. Het lijkt me niet raar als PclZip die niet uit kan pakken.


Ja, ik gebruik de optie Add to "(naam).zip", zo heb je ook Add to "(naam).7z". Het lijkt me dan toch echt wel een Zip niet?
Offline Rik - 17/04/2009 11:38
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Ja, dan zal het inderdaad wel goed zijn ingepakt. Heb je al eens de error reporting handmatig gebruikt zoals ze hier zeggen?
http://www.phpc...php?errors

Als het niets doet zal dat toch op z'n minst een verklaring moeten geven...
Offline GijsB - 17/04/2009 11:44 (laatste wijziging 17/04/2009 11:45)
Avatar van GijsB Nieuw lid
Boukefalos schreef:
Ja, dan zal het inderdaad wel goed zijn ingepakt. Heb je al eens de error reporting handmatig gebruikt zoals ze hier zeggen?
http://www.phpc...php?errors

Als het niets doet zal dat toch op z'n minst een verklaring moeten geven...


Dat zit er inderdaad ingebouwd.

Bij deze de code, ik zie dat ik nog geen commentaar toegevoegd heb. Als je die nodig hebt laat je het maar weten.
Plaatscode: 136115
Offline Rik - 17/04/2009 11:54
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Wat geeft print_r($lijst) op regel 24?

Het kan zijn dat PclZip het wel uitpakt, maar dat er iets anders aan de hand is. Dat zou die aanmoeten geven met een van de status codes hier onderaan:
http://www.phpc...understand
Offline GijsB - 17/04/2009 12:05 (laatste wijziging 17/04/2009 12:07)
Avatar van GijsB Nieuw lid
  1. Array ( [0] => Array ( [filename] => afbeeldingen/Tweety (1).png [stored_filename] => afbeeldingen/Tweety (1).png [size] => 27271 [compressed_size] => 5465 [mtime] => 1171539186 [comment] => [folder] => [index] => 0 [status] => ok [crc] => 757826654 ) [1] => Array ( [filename] => afbeeldingen/Tweety (2).png [stored_filename] => afbeeldingen/Tweety (2).png [size] => 5447 [compressed_size] => 4483 [mtime] => 1171539186 [comment] => [folder] => [index] => 1 [status] => ok [crc] => -1109099803 ) [2] => Array ( [filename] => afbeeldingen/Tweety (3).png [stored_filename] => afbeeldingen/Tweety (3).png [size] => 2660 [compressed_size] => 2520 [mtime] => 1171539186 [comment] => [folder] => [index] => 2 [status] => ok [crc] => -1224795640 ) [3] => Array ( [filename] => afbeeldingen/Tweety (4).png [stored_filename] => afbeeldingen/Tweety (4).png [size] => 4125 [compressed_size] => 3801 [mtime] => 1171539186 [comment] => [folder] => [index] => 3 [status] => ok [crc] => -2121501433 ) [4] => Array ( [filename] => afbeeldingen/Tweety (5).png [stored_filename] => afbeeldingen/Tweety (5).png [size] => 2674 [compressed_size] => 2318 [mtime] => 1171539186 [comment] => [folder] => [index] => 4 [status] => ok [crc] => 1811857131 ) [5] => Array ( [filename] => afbeeldingen/Tweety (6).png [stored_filename] => afbeeldingen/Tweety (6).png [size] => 21058 [compressed_size] => 4517 [mtime] => 1171539186 [comment] => [folder] => [index] => 5 [status] => ok [crc] => 176433830 ) [6] => Array ( [filename] => afbeeldingen/Tweety.png [stored_filename] => afbeeldingen/Tweety.png [size] => 1947 [compressed_size] => 1847 [mtime] => 1171539186 [comment] => [folder] => [index] => 6 [status] => ok [crc] => -1862553947 ) )


De outcome van print_r($lijst) met een van de zips die niet goed werkt.

De outcome van de print_r($lijst) met de werkende zips.

  1. Array ( [0] => Array ( [filename] => ../afbeeldingen/ [stored_filename] => ../afbeeldingen/ [size] => 0 [compressed_size] => 0 [mtime] => 1239792680 [comment] => [folder] => 1 [index] => 0 [status] => ok [crc] => 0 ) [1] => Array ( [filename] => ../afbeeldingen/roundbuttonsmall.jpg [stored_filename] => ../afbeeldingen/roundbuttonsmall.jpg [size] => 13867 [compressed_size] => 7552 [mtime] => 1239748874 [comment] => [folder] => [index] => 1 [status] => ok [crc] => 1812766747 ) [2] => Array ( [filename] => ../afbeeldingen/msn_smiley.png [stored_filename] => ../afbeeldingen/msn_smiley.png [size] => 373 [compressed_size] => 378 [mtime] => 1239318196 [comment] => [folder] => [index] => 2 [status] => ok [crc] => -1387733164 ) )



In de eerste zip zitten wel meer afbeeldingen, mar dat lijkt me logisch.

Een verschilletje waar ook rekening mee moet gehouden worden. In de tweede zip zit alles nog eens afzonderlijk in een map wat dus ook betekent dat die map als eerste in de array staat en dat dus geen afbeelding is.
Offline Rik - 17/04/2009 13:03
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Oké, dat betekent dat PclZip beide archieven in ieder geval kan lezen. Dan moet het dus mis gaan met het uitpakken. Als het goed is geeft extract() (regel 16) een zelfde soort array terug, maar dan ook met fouten die betrekking hebben op het uitpakken. Kun je posten wat dat geeft?

Dat andere verschil dat je noemt, zou ook belangrijk kunnen zijn. Misschien is het toch een probleem met de schrijfrechten op een of andere manier.
Offline GijsB - 17/04/2009 13:13
Avatar van GijsB Nieuw lid Ik heb even de extract ook een variabele van gemaakt
dus $test = $zip->extract(); en dan print_r($test) Dat is wat je bedoelt neme ik aan niet?

Outcome:

7-Zip zip:
  1. Array ( [0] => Array ( [filename] => .//Tweety (1).png [stored_filename] => Tweety (1).png [size] => 27271 [compressed_size] => 5464 [mtime] => 1171539186 [comment] => [folder] => [index] => 0 [status] => write_error [crc] => 757826654 ) [1] => Array ( [filename] => .//Tweety (2).png [stored_filename] => Tweety (2).png [size] => 5447 [compressed_size] => 4479 [mtime] => 1171539186 [comment] => [folder] => [index] => 1 [status] => write_error [crc] => -1109099803 ) [2] => Array ( [filename] => .//Tweety (3).png [stored_filename] => Tweety (3).png [size] => 2660 [compressed_size] => 2516 [mtime] => 1171539186 [comment] => [folder] => [index] => 2 [status] => write_error [crc] => -1224795640 ) [3] => Array ( [filename] => .//Tweety (4).png [stored_filename] => Tweety (4).png [size] => 4125 [compressed_size] => 3801 [mtime] => 1171539186 [comment] => [folder] => [index] => 3 [status] => write_error [crc] => -2121501433 ) [4] => Array ( [filename] => .//Tweety (5).png [stored_filename] => Tweety (5).png [size] => 2674 [compressed_size] => 2315 [mtime] => 1171539186 [comment] => [folder] => [index] => 4 [status] => write_error [crc] => 1811857131 ) [5] => Array ( [filename] => .//Tweety (6).png [stored_filename] => Tweety (6).png [size] => 21058 [compressed_size] => 4500 [mtime] => 1171539186 [comment] => [folder] => [index] => 5 [status] => write_error [crc] => 176433830 ) [6] => Array ( [filename] => .//Tweety.png [stored_filename] => Tweety.png [size] => 1947 [compressed_size] => 1836 [mtime] => 1171539186 [comment] => [folder] => [index] => 6 [status] => write_error [crc] => -1862553947 ) )


Server zip:
  1. Array ( [0] => Array ( [filename] => .//../afbeeldingen/ [stored_filename] => ../afbeeldingen/ [size] => 0 [compressed_size] => 0 [mtime] => 1239792680 [comment] => [folder] => 1 [index] => 0 [status] => already_a_directory [crc] => 0 ) [1] => Array ( [filename] => .//../afbeeldingen/roundbuttonsmall.jpg [stored_filename] => ../afbeeldingen/roundbuttonsmall.jpg [size] => 13867 [compressed_size] => 7552 [mtime] => 1239748874 [comment] => [folder] => [index] => 1 [status] => ok [crc] => 1812766747 ) [2] => Array ( [filename] => .//../afbeeldingen/msn_smiley.png [stored_filename] => ../afbeeldingen/msn_smiley.png [size] => 373 [compressed_size] => 378 [mtime] => 1239318196 [comment] => [folder] => [index] => 2 [status] => ok [crc] => -1387733164 ) )



Dat met de map in de zip dat kan het probleem niet zijn. De 7zip zip werkt ook niet met zo'n map. Ik heb al naar permissies gekeken, maar als het geupload is hebben beide zips 644 permissies. Het uploaden gaat namelijk perfect, het deleten ook maar dat is er tijdelijk uitgehaald en hij zet ook alles in de database. Het is enkel het uitpakken dat niet wilt meewerken.
Offline Rik - 17/04/2009 19:53
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Hij geeft dus wel als status ook write_error en already_a_directory. Waarschijnlijk heb je wel genoeg rechten gegeven, maar bestaan een boel van die bestanden al.

Ik zou het eens opnieuw proberen in een nieuwe lege map.
Offline GijsB - 19/04/2009 00:51
Avatar van GijsB Nieuw lid Vandaag weinig tijd gehad, net toch nog even kunnen problemen maar een lege map lost het probleem niet op. Morgen eens een andere uitpak classe zoeken, wie weet helpt dat.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.416s