Funktioniert Contao-Leads nun eigentlich zuverlässig mit PhpSpreadsheet oder muss man weiterhin den Vorgänger phpoffice/phpexcel nutzen? Hat da jemand aktuelle Erfahrungswerte?
Druckbare Version
Funktioniert Contao-Leads nun eigentlich zuverlässig mit PhpSpreadsheet oder muss man weiterhin den Vorgänger phpoffice/phpexcel nutzen? Hat da jemand aktuelle Erfahrungswerte?
Damit Contao-Leads mit phpoffice/phpspreadsheet funktioniert muss der Excel-Export umgeschrieben werden. Bis auf weiteres also phpoffice/phpexcel verwenden. Es gibt bereits ein Ticket dazu.
Hallo zusammen,
ich würde gerne die Excel Funktionalität mit Contao Leads nutzen - finde aber keine Anleitung. Wie muss ich phpoffice/phpexcel einrichten und konfigurieren?
Danke!
Du musst es einfach per composer installieren. Mehr nicht. Wenn du composer in Contao 3.5 nicht verwendest, musst du die alte [php_excel] Extension installieren. Siehe die README von https://github.com/terminal42/contao-leads
Nein, leads sagt, dass du phpoffice/phpexcel installieren kannst.
das Readme von PHPExcel:
https://packagist.org/packages/phpoffice/phpexcel
Erstaunlicher Weise gibt es aber eine Version 1.8.2 !?Zitat:
PHPExcel last version, 1.8.1, was released in 2015. The project was officially deprecated in 2017 and permanently archived in 2019.
The project has not be maintained for years and must not be used anymore. All users must migrate to its direct successor PhpSpreadsheet, or another alternative.
Meine Unwissenheit wie ich ein Paket das nicht im Manager auftaucht sinnvoll zu installieren habe bleibt aber, egal welches der beiden Pakete ich nutzen würde.
Die Unsicherheit rührt daher, dass sich die Routinen in für mich unübersichtlichen Schritten ändern.
Da hatte ich mir gerade mühevoll die Installation von Contao per Konsole angeeignet , da ist bei der nächsten Installation dieser Weg leider nicht mehr der Bessere ... Diesmal war es dann der Manager der das besser hingekriegt hat. Der hatte bei der vorhergehenden Installation für jede Menge Frust gesorgt.
Jetzt vermute ich den "composer" als Mittel der Wahl und weiß wieder nicht Bescheid. In 8 Monaten von 3.5 zu 4.7 das 4. Verfahren :(
Ich weiss ja nicht so richtig wie Du das gezählt hast, aber im Grunde gibt es zwei Verfahren, die gleichberechtigt sind und je nach Gegebenheit, Wissensstand, Workflow und eigenen Vorlieben eingesetzt werden können.
Das Update über Composer funktionierte von Anfang an. Der Contao Manager kam später dazu und wird kontinuierlich verbessert, damit er auch auf den meisten Shared Hostern problemlos läuft.
Die Einführung des Cloud-Resolvers lagert die speicherintensiven Abhängigkeitsauflösungen auf einen leistungsfähigen Cloud-Server aus und ermöglicht ein Update von Contao "direkt" im Hostingpaket auch bei vergleichsweise "schwachen" Shared-Hostingpaketen. Alternative gibt es auch hier. Man löst die Abhängigkeiten lokal auf.
Ein Sonderfall sind Erweiterungen die gar nicht auf Packagist für Composer zu finden sind. Die musst Du manuell installieren und selbst testen ob es funktioniert. Manuelle Installationen gab es unter Contao 3 aber auch schon. Einfach wie unter Contao 3 auch die Erweiterung nach /system/moduls schieben und danach den Symfony-Cache löschen (Konsole oder Contao-Manager->Systemwartung->Prod.-Cache erneuern). Falls die Erweiterung nicht funktioniert eben wieder löschen und natürlich auch da den Symfony-Cache löschen.
Danke, das könnte helfen.
Zählweise ER, Konsole, Composer, Contao Manager ... wobei letztere das gleiche sind? Dafür wäre mit "Manuell per FTP" die 5.Variante und die 6. weil sich die Struktur in 3.5 und 4 ja doch unterscheidet.
Für einen Gelegenheitsnutzer kann es schon mal unübersichtlich werden, weil man eben nicht genau weiß welche "Stolperfalle" jetzt genau an welcher Stelle war.
Ich muss es nochmal fragen.
Composer ist die "composer.json", den ich gar nicht irgendwie öffne sondern immer per Konsole oder Manager anstoße, oder?
In der Anleitung zu
phpspreadsheet
https://phpspreadsheet.readthedocs.io/en/latest/
steht
Ich habe es mit dem terminal versucht ... will aber nicht gelingen.Code:composer require phpoffice/phpspreadsheet
Stehe mal wieder auf der Leitung und brauche Hilfe
Das Paket taucht vermutlich deshalb nicht mehr im Contao Manager auf, weil es als "abandoned" markiert wurde.
Du könntest dazu ein Ticket auf GitHub beim Contao Manager öffnen um dies zu diskutieren, da es ja Pakete gibt die trotzdem dieses Paket benötigen und daher auch installiert werden.
Es geht mir eher um grundsätzliche Erklärung wie und wo ich den composer installiere
ich habe mich jetzt mit dieser Videoanweisung versucht
https://contao-academy.de/blog/conta...n-installieren
und dabei festgestellt, dass die von https://phpspreadsheet.readthedocs.io/en/latest/ zur Verfügung gestellte Schreibweise
nicht vollständig ist.Code:composer require phpoffice/phpspreadsheet
Außerdem vermute ich, dass die mir immerhin gelungene Composer Installation im falschen Ordner liegt. Sie liegt jetzt "ganz oben" aber die "phpspreadsheet" muss doch eigentlich in Module, oder?
Wird die automatisch richtig platziert? Ich befürchte, nein!
Der Prozess wird mal wieder gekilled ... ich vermute irgendwas mit Speicher:rolleyes:
Code:baslerd@www62:~/public_html/Droplimits2019$ php composer.phar require phpoffice/phpspreadsheet
Using version ^1.6 for phpoffice/phpspreadsheet
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Killed
baslerd@www62:~/public_html/Droplimits2019$ php composer.phar require phpoffice/phpspreadsheet
Using version ^1.6 for phpoffice/phpspreadsheet
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Fatal error: Allowed memory size of 1610612736 bytes exhausted (tried to allocate 4096 bytes) in phar:///usr/www/users/baslerd/Droplimits2019/composer.phar/src/Composer/DependencyResolver/RuleWatchGraph.php on line 52
Check https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors for more info on how to handle out of memory errors.baslerd@www62:~/public_html/Droplimits2019$
Ich hoffe hier ist das richtig platziert
https://github.com/contao/contao-manager/issues/402
Gerade , nach etwas Warten entdeckt, dass Spreadsheet im Contaomanger als manuel installiert auftaucht
Hab das Paket aktualisiert und auch NotififationCenter und Leads
Datenbank aktualisiert und Anwendung und Composer Cache geleert
Leider wird im Formulargenerator kein weiterer Datentyp außer .csv angezeigt !?
Eigentlich sollte das doch dann von alleine arbeiten, oder muss ich irgendwo noch "einen Knopf" drücken?
In der Anleitung kann ich nichts finden und es scheint sich von der Idee auch nicht von PHPexcel zu unterscheiden... das Flussdiagramm der Arbeitsweise ist noch mit PHPexcel beschriftet ;-)
https://phpspreadsheet.readthedocs.i.../architecture/
Du musst, wie schon mehrmals erwähnt, phpoffice/phpexcel installieren.
Nachdem ich verstanden habe wie man phpspreadsheet installiert hat es auch bei PHPexcel funktioniert.
Was mich irritiert, im Terminal ist der Prozess wieder "gekilled" worden, trotzdem taucht nach ein wenig Warten das Paket im ContaoManager auf.
Im ContaoManager habe ich das Paket dann aktualisiert und kann jetzt auch einen Excel Export durchführen.
Was soll also der Hinweis das PHPspreadsheet der Nachfolger von PHPexcel ist und das man phpexcel nach Möglichkeit nicht mehr nutzen soll???
Zur Erklärung: Das liegt daran, da Du den Installationsversuch zuerst auf der Konsole ausgeführt hast, welcher aber wegen Speichermangel gekillt wurde. Bei dieser Konsolenoperation wurde Deine composer.json automatisch geändert und der Paketname ergänzt (die ursprüngliche composer.json konnte aufgrund des Abbruchs nicht mehr wiederhergestellt werden):
Daher taucht dieses Paket nun auch im Contao Manager auf. Im Grunde also nichts anderes, als ob Du den Paketnamen selbst manuell in die composer.json geschrieben hättest.Code:...
./composer.json has been updated
...
Ja, natürlich. Die vorletzte Zeile brauchst Du aber nicht, sondern nur "phpoffice/phpexcel": "^1.8"
Du kannst auchauf der Konsole ausführen, dann in den Contao Manager gehen und dort eine Paket Aktualisierung durchführen.Code:composer require phpoffice/phpexcel --no-update
Statt nur "composer" muss aber noch "php composer.phar" dort stehen oder?
Ohne ist im Terminal nix passiert
Code:composer require phpoffice/phpspreadsheet
-bash: composer: command not found
Hab heute den ganzen Tag vorm Rechner verbracht. Danke an alle Helfer. Ohne Euch hätte ich keine Chance, auch wenn ich nicht immer sofort alles kapiere
Gute Nacht
Nachdem ich das Zeitüberschreitungsproblem ( an anderer Stelle besprochen) gelöst habe würde ich gern phpoffice neu installieren.
Das gelingt mit aber nicht
Ich kriege den Befehl in der Konsole nicht richtig platziert
"command not found"PHP-Code:
composer require phpoffice/phpexcel --no-update
Mein Verzeichnis sieht so aus
Code:app composer.phar files templates
assets composer-setup.php PhpSpreadsheet-master var
composer.json contao-manager README.md vendor
composer.lock favicon.ico system web
"php" musst du ggf. mit dem Pfad zum PHP CLI in der richtigen Version ersetzen.Code:php composer.phar require phpoffice/phpexcel --no-update
Ich versuch nochmal eure Hilfe mit einem besseren Bilder der Verzeichnisstruktur zu bekommen
Anhang 22125
Wo genau brauchst du Hilfe?
Du musst einfach nur das hier erwähnte Kommando im Root deiner Contao Installation ausführen - und wie gesagt ggf. den PHP CLI Pfad anpassen, je nach Hosting Umgebung und von deiner Website verwendeten PHP Version.
Schau mal in diesem Thread: https://community.contao.org/de/show...rt-alles-ein-(
Dort hatten wir das alles schon einmal besprochen.
Falls Du in der Zwischenzeit PHP 7.2 oder 7.3 verwendest, solltest Du den Pfad zum PHP-CLI natürlich entsprechend anpassen.
Hast Du das jetzt manuell gemacht oder über das von @Spooky oben gepostete Kommando?
Ich habe es zuerst mit dem von spooky vorgeschlagenem Befehl per Terminal versucht.
Der Befehl konnte in keinem Verzeichnis ausgeführt werden. Wohl wegen einem Schreibfehler, den ich aber nicht erkenne. Vielleicht aber auch weg falscher Platzierung oder wegen Beidem.
Dann habe ich die schon einmal erfolgreiche Strategie direkt in die Jasondatei zu schreiben versucht. Quittiert mit einem PHP Fehler bereits im Contaomanager der sich auf den manuellen Eintrag bezog.
Das habe ich gemacht:
Anhang 22129
Das ist nicht der Befehl, den ich gepostet habe.
Du musst im Hauptverzeichnis der Installation, folgenden Befehl ausführen.
/usr/bin/php71muss jenachdem angepasst werden.Code:/usr/bin/php71 composer require phpoffice/phpexcel --no-update
@bjarke es muss aber composer.phar sein.
Ich habe diesen hier benutzt
https://community.contao.org/de/show...l=1#post497710
Dieser Befehl gilt, wie schon in #35 erwähnt, nur dann, wenn du Composer global installiert hast. Der Befehl ist stellvertretend für was auch immer du in deiner Umgebung eingeben musst.
Laut deinem Screenshot hast du die composer.phar runtergeladen. Daher musst du es so machen, wie in #35 erwähnt. Und wie gesagt ist auch dort php stellvertretend für die Pfadangabe zu der zu deiner Domain passenden PHP CLI Version (kann ggf. auch einfach nur php sein).
Danke für Eure Geduld, jetzt hat es geklappt
Jetzt habe ich auch endlich herausgefunden was "PHP CLI Version" bedeutet. Die bei mir installierte PHP Version, oder?
So habe ich es gemacht
Zitat:
Beispiel für meine Installation und „phpoffice/phpexcel“:
im Terminal (OSX) den Befehl ausführen, um das Paket zu installieren
baslerd@www62:~/public_html/Droplimits2019$ /usr/bin/php71 composer.phar require phpoffice/phpexcel --no-update
Using version ^1.8 for phpoffice/phpexcel
./composer.json has been updated
Contao-Manager alle Paket aktualisiert
Datenbank im Installtool aktualisieren
Im Contao Manager -Systemwartung: Prod.-Cache erneuern & Composer Cache erneuern
"CLI" bedeutet "Command Line Interface" - also das Command Line Interface von PHP. Meistens sind auf einem System (bei Shared Hosting Umgebungen vor allem) mehrere PHP Versionen installiert. Daher musst du auch den richtigen Pfad zum richtigen PHP Command Line Interface verwenden - nämlich zu der PHP Version passend, die der Web Server für deine Website verwendet.
Hallo,
kann ich mich hier mal mit einer Frag einklinken ?
Bin jetzt nämlich halbwegs verwirrt
Nutze contao 4.4.45 notofication center und leads , ich möchte die Daten aus meiner eventanmeldung via excel exportieren , das benötigte Paket phpoffice/phpexcel scheint im contao manager aber als verwaist auf
(phpoffice/phpexcel
von Maarten BalliauwErik TiltFranck LefevreMark Baker
verwaist)
Was bedeutet das jetzt ? Da blicke ich noch nicht ganz durch.
Mein letzter Wissenstand ist, dass Du dieses Paket trotzdem nutzen musst, weil der Ecxel-Export aus Leads nur damit funktioniert.
"Verwaist" heisst ja nur, dass sich keiner mehr um die Weiterentwicklung kümmert. Wenn der Export nach wie vor problemlos funktioniert und keine Sicherheitsprobleme auftreten, spricht ja m.E. nichts gegen die Verwendung dieser Erweiterung.
Du musst phpoffice/phpspreadsheet installieren.
Danke für deine schnelle Antwort .
Ich habe jetzt aber nochmal nachgelesen https://packagist.org/packages/terminal42/contao-leads ( hätte ich natürlich auch vorher genauer machen sollen ^^") und folgendes gefunden :
The leads extension additionally offers an export function for each Lead in the backend. You can configure it as you wish! Export options for CSV and Excel are available. However you need to install either the phpoffice/phpspreadsheet or phpoffice/phpexcel package for Excel support, otherwise the Excel export option will not be available.
....müßte demnach also mit spreedsheet auch funktionieren
Wie kann man beim Export nach Excel aus einem Absatz ein Leerzeichen umwandeln?
Im Formular-Textfeld wurden oft harte Returns eingegeben, die beim Export wegfallen und dann Wörter zusammenrücken lassen. Hier würde ein Leerzeichen helfen.
Habe gerade durch Zufall festgestelt, dass wenn man bugbuster/contao-visitors-bundle installiert, man dann automatisch auch phpoffice/phpspreadsheet: ~1.0 mit dabei hat. Musst bugbuster/contao-visitors-bundle allerdings in der dev-master Version installieren, vorherige Installationsversuche schlugen fehl. Bin auf Contao 4.11.2.
siehe https://packagist.org/packages/bugbu...isitors-bundle