php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 27-05-2010, 11:30
yfolz
 Registrierter Benutzer
Links : Onlinestatus : yfolz ist offline
Registriert seit: May 2010
Beiträge: 18
yfolz befindet sich auf einem aufstrebenden Ast
Post Datei unkomprimiert in Zip Verzeichnis

Hallo PHP Community,

ich arbeite gerade an einer dynamischen EPub Generierung. Dabei habe ich das Problem das ich eine Datei unkomprimiert in ein Zip Verzeichnis übertragen muss.

PHP-Code:
$epub->add_file('application/epub+zip''mimetype'$tstamp); 
Gibt es die Möglichkeit bei add_file noch mitzuteilen das die Datei nicht komprimiert werden soll?

Über Antworten würde ich mich sehr freuen.

Grüße Yvon

Geändert von yfolz (27-05-2010 um 12:15 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 27-05-2010, 11:43
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo und willkommen im Forum,

Code gehört in die entsprechenden Tags (siehe Signatur).

Die erwähnte Methode add_file gehört nochmal zu welcher Klasse? Hast du schon in der Doku zu dieser Klasse nachgesehen?

PHP kann ZIP-Archive entpacken, aber ob das mit dieser Klasse on the fly möglich ist, weiß ich nicht.

Gruß,

Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #3 (permalink)  
Alt 27-05-2010, 11:50
yfolz
 Registrierter Benutzer
Links : Onlinestatus : yfolz ist offline
Registriert seit: May 2010
Beiträge: 18
yfolz befindet sich auf einem aufstrebenden Ast
Standard

Hallo AmicaNoctis,

ich werde mir die Einhaltung der Foreneingabe merken für die nächsten Posts. Ja, es geht um die Zip Klasse auf die Du im Link verwiesen hast. Bei meinen Netzrecherchen PHP :: Request #41243 :: How to use ZIPARCHIVE::CM_STORE stand es gehe nicht. Das war Stand 2006. Sonst bin ich leider nicht weiter fündig geworden.

Gruß Yvon
Mit Zitat antworten
  #4 (permalink)  
Alt 27-05-2010, 12:05
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von yfolz Beitrag anzeigen
ich werde mir die Einhaltung der Foreneingabe merken für die nächsten Posts.
Es gibt auch einen Ändern-Button mit dem man das nachholen kann.

Zitat:
Zitat von yfolz Beitrag anzeigen
Ja, es geht um die Zip Klasse auf die Du im Link verwiesen hast.
Glaub ich weniger. Erstens heißt sie dort addFile (ohne Unterstrich) und zweitens passen deine Parameter irgendwie nicht zu deren Signatur.

Du redest von irgendeiner anderen, vermutlich inoffiziellen Klasse, was es extrem schwer macht, dir irgendwie zu helfen.

__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #5 (permalink)  
Alt 27-05-2010, 12:09
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Is there a way to create an uncompressed zip from PHP? - Stack Overflow
Mit Zitat antworten
  #6 (permalink)  
Alt 27-05-2010, 12:17
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Sag mal, ist das die Klasse, die du benutzt? DevNetwork Forums • View topic - Zip class

Wenn ja, warum kannst du das nicht gleich sagen?
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #7 (permalink)  
Alt 27-05-2010, 12:23
yfolz
 Registrierter Benutzer
Links : Onlinestatus : yfolz ist offline
Registriert seit: May 2010
Beiträge: 18
yfolz befindet sich auf einem aufstrebenden Ast
Standard

Okay,

Änderung im Beitrag oben gemacht

Ja, ich benutze eine Klasse von Welcome to the PHP Classes Repository - PHP Classes

Hier ein Auszug:

PHP-Code:
 function ZipCreate($_ztype 'gzip')
  {
    
$this->filedata '';
    
$this->cntrldir '';
    
$this->comment  '';
    
$this->offset   0;
    
$this->entries  0;

    switch(
strtolower($_ztype))
    {
      case 
'gzip' :
        if (!
function_exists('gzcompress'))
        {
          
trigger_error('Your PHP installation does not support gzip compression'E_USER_ERROR);
        }

        
$this->ztype 'gzip';
        break;

      case 
'bzip2':
        if (!
function_exists('bzcompress'))
        {
          
trigger_error('Your PHP installation does not support bzip2 compression'E_USER_ERROR);
        }

        
$this->ztype 'bzip2';
        break;

      case 
'stored':
        
$this->ztype 'store';
        break;

      default      :
        
// default to no (Stored) compression type for anything else
        
$notice_msg  'Unsupported compression type (' $_ztype ') using Stored instead';
        
$this->ztype 'store';
        
trigger_error($notice_msgE_USER_NOTICE);
    }
  } 
Auf dem Server ist BZip2 installiert, läuft unter Linux.

Gruß Yvon
Mit Zitat antworten
  #8 (permalink)  
Alt 27-05-2010, 12:29
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Na dann:
PHP-Code:
$epub->ztype 'store'
um die nächste Datei unkomprimiert zu speichern, danach setzt du es wieder zurück auf den Typ, den du im Konstruktor übergeben hast.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #9 (permalink)  
Alt 27-05-2010, 12:34
yfolz
 Registrierter Benutzer
Links : Onlinestatus : yfolz ist offline
Registriert seit: May 2010
Beiträge: 18
yfolz befindet sich auf einem aufstrebenden Ast
Standard

Also müsste es folgendermassen aussehen:

PHP-Code:
$prev_encoding $epub->ztype;
$epub->ztype 'store';
//Mimetyp darf nicht komprimiert werden
$epub->add_file('application/epub+zip''mimetype'$tstamp);
$epub->ztype $prev_encoding;
$epub->ztype 'bzip2';
// add container - komprimierte files
$epub->add_file($container'META-INF/container.xml'$tstamp); 
...

Aber schon mal vielen Dank für Deine Mühe!
Komischerweise ist das doofe mimetyp immer noch komprimiert, oder ich hab' da noch einen Dreher drinnen.
Mit Zitat antworten
  #10 (permalink)  
Alt 27-05-2010, 12:44
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

PHP-Code:
$epub->ztype $prev_encoding// das ist besser
$epub->ztype 'bzip2';        // das kann weg 
Zitat:
Zitat von yfolz Beitrag anzeigen
Komischerweise ist das doofe mimetyp immer noch komprimiert
Kann ich mir nicht vorstellen, der Code ist korrekt. Woher weißt du denn, dass es komprimiert ist?
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #11 (permalink)  
Alt 27-05-2010, 12:54
yfolz
 Registrierter Benutzer
Links : Onlinestatus : yfolz ist offline
Registriert seit: May 2010
Beiträge: 18
yfolz befindet sich auf einem aufstrebenden Ast
Standard

Das gibt mir der EPubchecker von Google aus. Wenn ich die Datei mimetyp von Hand aus reinpacke mit Kompressionsmethode "normal" in WinRar funktioniert es anschliessend.

Das ist der ganze "Pack Code", der auf die Klasse zugreift

PHP-Code:
$prev_encoding $epub->ztype;
$epub->ztype 'store';
//Mimetyp darf nicht komprimiert werden
$epub->add_file('application/epub+zip''mimetype'$tstamp);

$epub->ztype $prev_encoding;

// add container
$epub->add_file($container'META-INF/container.xml'$tstamp);

// add opf
$epub->add_file($opf'OEBPS/content.opf'$tstamp);

// add toc
$epub->add_file($toc'OEBPS/tox.ncx'$tstamp);

//add cover
$epub->add_file($cover'OEBPS/cover.xhtml'$tstamp);

//add styles
$epub->add_file($style'OEBPS/style.css'$tstamp);


//add opener
$epub->add_file($opener'OEBPS/Opener.xhtml'$tstamp);
//add chapters
$epub->add_file($chapter'OEBPS/Kapitel1.xhtml'$tstamp);
//add infos
$epub->add_file($infos'OEBPS/Infos.xhtml'$tstamp);

//add backcover
//$epub->add_file($backcover, 'OEBPS/backcover.xhtml', $tstamp);

// add your xhtml and CSS and pictures and fonts here

// finish it up and download
$output_file $epub->build_zip();
$output_name $story['title'] . '.epub';
$output_mime 'application/epub+zip'

Geändert von yfolz (27-05-2010 um 12:57 Uhr)
Mit Zitat antworten
  #12 (permalink)  
Alt 27-05-2010, 13:05
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Kannst du das fertige ZIP mal als Anhang hinzufügen?
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #13 (permalink)  
Alt 27-05-2010, 13:43
yfolz
 Registrierter Benutzer
Links : Onlinestatus : yfolz ist offline
Registriert seit: May 2010
Beiträge: 18
yfolz befindet sich auf einem aufstrebenden Ast
Standard Datei korrekt

Die Datei im Zip Verzeichnis ist jetzt korrekt, alles jetzt nach Spezifikation.

Vielen Dank für Deine Mühe.
Mit Zitat antworten
  #14 (permalink)  
Alt 27-05-2010, 13:46
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von yfolz Beitrag anzeigen
Die Datei im Zip Verzeichnis ist jetzt korrekt.
Und woran lag es jetzt?
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #15 (permalink)  
Alt 27-05-2010, 13:48
yfolz
 Registrierter Benutzer
Links : Onlinestatus : yfolz ist offline
Registriert seit: May 2010
Beiträge: 18
yfolz befindet sich auf einem aufstrebenden Ast
Standard

Dein Weg war richtig, hatte dooferweise einen Schreibfehler im Code. Hatte mich auf den Epub Reader verlassen, dabei war das Problem behoben. Das Format ist grausig.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Datei aus Verzeichnis löschen Fanello PHP Developer Forum 6 31-08-2007 23:22
Datei oder Verzeichnis? Raico PHP Developer Forum 3 17-01-2007 16:19
wie alt ist jüngste datei in verzeichnis? sphings Apps und PHP Script Gesuche 3 05-07-2006 14:47
Datei-Verzeichnis auslesen _mil28 PHP Developer Forum 1 16-01-2006 17:09
Komplettes Verzeichnis und Datei StephanF PHP Developer Forum 1 15-11-2002 19:05

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

ModuleStudio ansehen ModuleStudio

Modellgetriebene Entwicklung von Erweiterungen für das Open Source Framework Zikula.

15.01.2019 Guite | Kategorie: PHP ENTWICKLUNGSUMGEBUNG
FAQ Script PHP ansehen FAQ Script PHP

FAQ Script PHP is a simple knowledgebase script and you could use it as a Frequently Asked Question section on your website. It is written in PHP and MySQL.

14.01.2019 nevenov | Kategorie: PHP/ FAQ
Admidio Mitgliederverwaltung

Admidio ist eine kostenlose Online-Mitgliederverwaltung, die für Vereine, Gruppen und Organisationen optimiert ist. Sie besteht neben der Mitgliederverwaltung aus einer Vielzahl an Modulen (Foto-, Download-, Terminverwaltung), die in eine neue oder besteh

08.01.2019 webmaster52@ | Kategorie: PHP/ Groupware
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:35 Uhr.