EXPORTING .CSV-FILE FROM BREEZINGFORMS - WRONG ORDER OF COLUMNS

  • Hi all,



    I have two issues with the CSV export and I hope anyone can help me.



    -- issue 1 --



    When I generate a .csv- file of the filled BreezingForms formular-fields, the columns in .csv-file are ordered alphabetically. What I want to achieve, is that the columns have the same order like on the BreezingForms formular.



    --issue 2--

    My second problem is, that the .csv-file export mixes two data entries in one field. You can see it in the attached picture.

    For better understanding you have to know, that my form has some fields that have the same "title" but different "names" in the backend. For example on page 1 of the form Person 1 has to fill out the fields "city", "postcode"... On page 2 Person 2 has also to fill out the fields "city", "postcode".... In the CSV file there is only one heading for "city" and two data entries (Berlin | Paris) of the two persons in one field.





    What can I do, that the CSV file is generated like my BreezingForm fields?



    I would be very thankful, if anybody could help me.



    Anna

  • Hallo Elwood,


    vielen Dank für den Hinweis. Hier mein Problem nochmal auf Deutsch:


    Im Backend meiner Homepage habe ich die Komponente BreezingFormsPro installiert und anschließend mit Hilfe dieser Komponente ein Anmeldeformular auf die Seite eingebaut. Im Backend habe ich festgelegt, dass aus den ausgefüllten Formularfeldern eine csv-Datei generiert und per Mail versendet werden soll. Nach Öffnung der csv-Datei ergeben sich folgende 2 Probleme:


    1. In der generierten csv-Datei sind die Formular-Felder als Spaltenüberschriften alphabetisch geordnet. Damit ergibt sich eine falsche Reihenfolge der Felder. Stattdessen soll in der csv-Datei die Reihenfolge der Formularfelder, wie sie auf der Homepage abgebildet sind, eingehalten werden.


    2. Außerdem gibt es mehrere Formularfelder mit gleichem Titel auf der Homepage. So müssen z.B. 2 verschiedene Personen jeweils ihre Adresse mit den Feldern Straße, Hausnummer, Postleitzahl etc. ausfüllen. Person 1 (Ausbilder) gibt seine Daten zu den Feldern auf der Hompage auf Seite 1 ein und Person 2 (Auszubildender) gibt seine Daten zu den Feldern auf der Homepage auf Seite 2 ein. In der csv-Datei gibt es jedoch nur eine Spaltenüberschrift z.B. Straße und darunter befinden sich in Zeile 2 ZWEI Dateneinträge (von Person 1 und Person 2) getrennt durch einen Strich.


    Wie kann ich erreichen, dass der Aufbau und die Reihenfolge meiner ursprünglichen Formularfelder auch in der CSV-Datei gewahrt bleibt?


    Ich würde mich freuen, wenn mir jemand weiterhelfen könnte.


    Viele Grüße

    Anna

  • Danke für den Hinweis des Links!


    Ja das ist korrekt, ich habe die Frage bereits bei Crosstec gestellt. Leider habe ich jedoch noch keine Antwort erhalten.


    Viele Grüße

    Anna

  • Ich habe mal nachgeschaut.

    2 Änderungen in folgender Datei machen:

    /components/com_breezingforms/facileforms.process.php


    Zeile 5457 als Kommentar setzen:

    // ksort($fields);


    Zeile 5471 als Kommentar setzen:

    // ksort($lines[$i]);


    Teste es mal! Aber ohne Garantie!

    Bei jedem Update von Breezingforms müsstest du das dann erneut ändern!

  • Das klingt super. Vielen Dank für den Hinweis.

    Gerne würde ich es testen. Leider finde ich nicht, wo die entsprechende PHP-Datei von BreezingForms hinterlegt ist, da ich bislang noch keine Codeanpassungen in Joomla vorgenommen habe.


    Könntest du mir kurz beschreiben, wie ich zur php-Datei gelange? Habe ich darauf Zugriff über das Backend oder muss ich per FTP-Zugang darauf zugreifen?


    Viele Grüße

    Anna

  • Geht per ftp

    Ginge per Backend nur wenn du eine zusätzliche entsprechende Erweiterung installiert hast z.B. so etwas wie:

    https://extensions.joomla.org/extension/profiles/

    oder

    https://extensions.joomla.org/…e-management/ff-explorer/

    oder

    https://extensions.joomla.org/…ile-management/extplorer/

  • Zitat

    Könntest du mir kurz beschreiben, wie ich zur php-Datei gelange?

    Hat er doch:


    Zitat

    /components/com_breezingforms/facileforms.process.php


    Kannst du es nicht über das BE und den Manage Records einstellen?

  • Und einen vernünftigen Editor verwenden, also keinesfall Word.

    Ich nutze gerne PSPAD. Da kannst du die FTP-Zugangsdaten auch eingeben, Verbindung herstellen, Datei öffnen und bearbeiten und dann als UTF-8 ohne Bom abspeichern. Das Runter- und Hochladen geschieht dabei automatisch.


    Oder halt mit Notepad++ , Filezilla oder ähnlichem arbeiten.

    Änderungen an php-Dateien auf jeden Fall aufschreiben!

    Falls es funktioniert, könntest du das dann auch gleich beim Anbieter ins Forum schreiben. Eventuell wird es dann in den Core aufgenommen.

  • Das mit der Reihenfolge sieht nun schon besser aus. Die CSV-Datei hält sich bei den meisten Feldern, deren Titel nur einmal vorkommt, an die Reihenfolge der Formularfelder im Frontend.


    Leider passiert es aber immer noch, dass die csv-Datei für Formularfelder deren Titel mehrfach vorkommt (z.B. Straße, Hausnummer, Postleitzahl, Ort), mehrere Dateneinträge in einer Zelle speichert. D.h. es gibt in der CSV-Datei nur einmal die Überschrift "Ort". Darunter ist der "Ort" von Person 1 und Person 2 in EINEM FELD, getrennt durch einen Strich, gespeichert (siehe Anhang Bild).


    Hat hier noch jemand eine Idee für eine entsprechende Codeanpassung für mich?

  • Bzgl. des anderen Problems wüsste ich das jetzt auch nicht. Aber kann man nicht Titel und Name angeben und damit irgendwie eine Unterscheidung bewirken. Oder halt über Ort1 und Ort2.


    Da kenne ich mich mit Breezingforms aber nicht genug aus. Müsste man selber mal testen können.

  • Anmerkung zu:

    ...Im Backend habe ich festgelegt, dass aus den ausgefüllten Formularfeldern eine csv-Datei generiert und per Mail versendet werden soll....

    So müssen z.B. 2 verschiedene Personen jeweils ihre Adresse mit den Feldern Straße, Hausnummer, Postleitzahl etc. ausfüllen. Person 1 (Ausbilder) ....Person 2 (Auszubildender) ....

    Da die Mail mit den personenbezogenen Daten aber wohl unverschlüsselt versendet wird müßte man wohl beim Formular mindestens so etwas ähnliches wie nachfolgenes für den Websitebesucher(Formularbenutzer) anbringen:


    "Dieses Formular wird als E-Mail unverschlüsselt an uns übertragen. Ihre Daten werden selbstverständlich vertraulich behandelt. Wir speichern sie daher ausschließlich zum Zweck xy und geben sie nicht an Dritte weiter. Die Angaben von persönlichen Daten geschieht freiwillig."

  • Nun hat sich noch eine weitere Frage ergeben:


    Meine generierte CSV-Datei enthält neben den von mir definierten Formularfeldern folgende zusätzliche Felder: ZZZ_A_FORM, ZZZ_B_SUBMITTED, ZZZ_C_IP, ZZZ_D_BROWSER, ZZZ_E_OPSYS .


    Diese zusätzlichen Felder (Informationen) sollen jedoch nicht erfasst und in der Datei enthalten sein.


    Hat jemand eine Idee, wie ich dies verhindern kann?

  • Meine generierte CSV-Datei enthält neben den von mir definierten Formularfeldern folgende zusätzliche Felder: ZZZ_A_FORM, ZZZ_B_SUBMITTED, ZZZ_C_IP, ZZZ_D_BROWSER, ZZZ_E_OPSYS .


    Diese zusätzlichen Felder (Informationen) sollen jedoch nicht erfasst und in der Datei enthalten sein.


    Hat jemand eine Idee, wie ich dies verhindern kann?


    Das lässt sich wohl auch auskommentieren;

    Siehe hier: https://crosstec.org/de/forums…la/109243-csv-export.html


    Das ist aber sicherlich nicht mehr bei ca. Zeile 5000, sondern mittlerweile sicher woanders.

    Nutze die Suchfunktion im Editor!


    Ok! Schau mal hier:

    ab Zeile 5412 und ab Zeile 5435


    Wieder ohne Garantie!