Support » Allgemeine Fragen » Verknüpfung zur mySQL-Datenbank

  • Gelöst hans37

    (@hans37)


    Als WordPress-Anfänger suche ich eine erste Hilfe für
    a) die Adressenerfassung (Beschreibung s. Test-Seite) in einer mySQL-Datenbank bei Strato
    b) senden einer Mail an den Betreiber (mich), wenn ein neuer Eintrag in die Datenbank erfolgte.

    Die Seite, für die ich Hilfe brauche: [Anmelden, um den Link zu sehen]

Ansicht von 12 Antworten - 16 bis 27 (von insgesamt 27)
  • Thread-Ersteller hans37

    (@hans37)

    Danke für den Hinweis auf die shortcodes – inzwischen bekomme ich die Formulardaten als eMail.
    Da sind noch 2 Probleme:
    1. Wie lassen sich die Datenfelder auf der Seite nebeneinander anordnen und längenmäßig verändern?
    2. Die Datenfeldausgabe über eMail ist o.k. – wie geht die Anbindung der Datenfelder an eine Strato-mySQL-Datenbank? Braucht man dazu weitere (kostenpflichtige) Plug-ins?
    Danke und Glück auf!
    Hans.

    # Wie lassen sich die Datenfelder auf der Seite nebeneinander anordnen und längenmäßig verändern?
    + CSS, zb

    # wie geht die Anbindung der Datenfelder an eine Strato-mySQL-Datenbank?
    + Wie meinen??????? Also dass nach dem Abschicken des Formulars die Daten gespeichert werden?
    + Hier lang, bitteschön: https://wordpress.org/plugins/contact-form-cfdb7/

    Thread-Ersteller hans37

    (@hans37)

    Die Beschreibung von “CFDB7” sagt:

    The “CFDB7” plugin saves contact form 7 submissions to your WordPress database. Export the data to a CSV file.
    By simply installing the plugin, it will <strong>automatically</strong> begin to capture form submissions from contact form 7 - No configuration is needed

    **

    1. “CFDB7” ist installiert und aktiv
    2. Bei jeder Formular-Eingabe sollte automatisch ein Eintrag in einer CVS-Datei erfolgen.
    3. Wo (Strato/User-PC) soll sich die CVS-Datei befinden?
    4. Mit „senden“ erfolgt ein korrekter eMail-Versand mit den Feldeinträgen, eine *.CVS-Datei konnte ich weder auf meinem PC noch im Strato-Verzeichnis finden.
    Gruß Hans.

    Bei jeder Formular-Eingabe sollte automatisch ein Eintrag in einer CVS-Datei erfolgen.

    Das war nicht, was du ursprünglich als Anforderung beschrieben hast:

    die Adressenerfassung (Beschreibung s. Test-Seite) in einer mySQL-Datenbank bei Strato

    Genau das macht das Plugin aber.

    Ich habe ein einfaches Kontaktformular aufgesetzt, die Seite aufgerufen, die Felder ausgefüllt und das Formular abgesendet. Contact Form 7 leitet die Formulareinträge per E-Mail an die in den Formulareinstellungen vorgegebene E-Mail-Adresse und speichert die Daten in der Datenbank. Über den Menüeintrag Kontaktformulare [1] kann ich die Einträge abrufen, hier nur ein Eintrag [2], den ich anschließend manuell als CSV-Datei abrufen kann [3].

    Screenshot Einstellungen
    (zum Vergrößern anklicken)

    @hans37
    # Die Beschreibung von “CFDB7” sagt:
    Der Link bot genug Hilfestellung! Hier im Forum kann man nur verkürzt antworten.
    Die verlinkte Seite selbst bietet alle Informationen, die @pixolin auch schon gebracht hat!

    Thread-Ersteller hans37

    (@hans37)

    Hallo Garde,
    1. Bei jeder Formular-Eingabe sollte automatisch ein Eintrag in einer CVS-Datei erfolgen.
    ==> o.k. – Danke für den Screenshot-Hinweis!
    2. `Das war nicht, was du ursprünglich als Anforderung beschrieben hast:
    die Adressenerfassung … in einer mySQL-Datenbank bei Strato
    Genau das macht das Plugin aber.`
    ==> Macht es das wirkliich? Meine definierte Strato-Datenbank bleibt von der
    Formulareingabe unberührt – es fehlt ja auch die Verbindung der
    Formular-Eingabefelder mit den (mit den von mir definierten)
    mySQL-Datenbankfeldern.
    ==> In welchem STRATO-apps/wordpress_01/app Unterverzeichnis werden die Daten
    auflaufend gespeichert, die mit dem CSV-Tab als CSV-Datei auf dem
    User-PC übertraen werden?
    Danke!

    Hallo Garde,

    das ist sehr höflich von dir, aber wir bleiben hier dann doch lieber beim unkomplizierten „du“, wenn das für dich OK ist. 🙂

    Meine definierte Strato-Datenbank bleibt von der
    Formulareingabe unberührt – es fehlt ja auch die Verbindung der
    Formular-Eingabefelder mit den (mit den von mir definierten)
    mySQL-Datenbankfeldern.

    Ich habe das so verstanden, dass du die Einträge in der MySQL-Datenbank so ablegen möchtest, wie du es im Formular vorgibst – und genau das macht das Plugin. Screenshot hab ich dir gezeigt. Was fehlt dir da jetzt noch? 🙂

    In welchem STRATO-apps/wordpress_01/app Unterverzeichnis werden die Daten auflaufend gespeichert, die mit dem CSV-Tab als CSV-Datei auf dem
    User-PC übertraen werden?

    Hast du dich mal mit dem Plugin beschäftigt? Wir empfehlen hier immer, eine kleine lokale WordPress-Installation anzulegen (z.B. mit DevKinsta) und zu testen.
    Du hast hier falsche Vorstellungen, wie das Plugin funktioniert. Das schreibt nicht fortlaufend in eine CSV-Datei, sondern speichert die Daten aller abgesendeten Formulare in deiner für WordPress genutzten MySQL-Datenbank. Wenn du dann sagst „so, jetzt brauche ich aber mal eine CSV-Datei“, kannst du die per Button abrufen. Ich hatte gedacht, dass das mit dem Screenshot recht offensichtlich ist? Scheinbar nicht – Sorry.

    Aber deine Frage ist wieder ein schönes Beispiel, wieso wir hier eigentlich keine Plugin-Empfehlungen aussprechen: Die Vorstellungen, was ein Plugin leisten soll und wie komplex es sein darf sind bei allen Anwender/-innen ganz verschieden und eine Empfehlung kann dann nur schief gehen. Aus dem Wunsch zu helfen, falle ich irgendwie immer wieder darauf rein … 😀

    Thread-Ersteller hans37

    (@hans37)

    „Das schreibt nicht fortlaufend in eine CSV-Datei, sondern speichert die Daten aller abgesendeten Formulare in deiner für WordPress genutzten MySQL-Datenbank. Wenn du dann sagst „so, jetzt brauche ich aber mal eine CSV-Datei“, kannst du die per Button abrufen. “
    ==> soweit ist die Sache klar – die Frage ist (s.u.): Wo liegt diese WP-Datenbank, um auf sie mit anderen SQL-Anwendungen direkt zugreifen zu können?

    Im readme.txt des Plugin steht:
    The „CFDB7“ plugin saves contact form 7 submissions to your WordPress database.
    ==> Wo liegt diese WP-Datenbank: Auf meinem PC? Auf dem Strato-Server? Auf dem WP-System? Für den direkten Zugriff mit anderen SQL-Anwendungen ist der Datenpfad zu dieser WP-Datenbank erforderlich.

    Export the data to a CSV file.
    ==> dein screenshot hat mir das gezeigt – das habe ich dir mit o.k. bestätigt

    By simply installing the plugin, it will automatically begin to capture form submissions from contact form 7.
    ==> Diese Eingabedaten gehen somit wohl in eine – an das jeweilige Formular gebundene – Tabelle der WP-Datenbank.

    Hallo,
    das ist eine Tabelle (wp_db7_forms – dein Präfix für die Tabellen könnte natürlich anders lauten als wp)in der Datenbank, die von WordPress genutzt wird.
    In der Regel kann man über phpMyAdmin auf die Datenbank zugrerifen, um sich das anzusehen. Wie das bei Strato gehen soll, findest du hier.
    Viele Grüße
    Hans-Gerd

    Wo liegt diese WP-Datenbank, …

    WordPress besteht aus diversen Dateien mit PHP-Skripten, die alles was du im Backend eingibst in eine MySQL-Datenbank schreiben und dort auch wieder abrufen, um dir z.B. bereits vorgenommene Einstellungen anzuzeigen.
    Wie du auf die MySQL-Datenbank bei Strato zugreifen kannst, hat der Webhoster in einer FAQ erläutert: So nutzen Sie unsere MySQL-Datenbank

    um auf sie mit anderen SQL-Anwendungen direkt zugreifen zu können?

    Auch das ist eine Anforderung, die du ursprünglich so nicht gestellt hast: „Adressenerfassung (Beschreibung s. Test-Seite) in einer mySQL-Datenbank bei Strato“ hat nichts mit dem Wunsch zu tun, „mit anderen SQL-Anwendungen direkt darauf zuzugreifen“.

    Wo liegt diese WP-Datenbank: Auf meinem PC? Auf dem Strato-Server? Auf dem WP-System?

    „Auf deinem PC“ wohl kaum, sonst könnte man nicht laufend die Website abrufen. Und „auf dem WP-System“ ergibt überhaupt keinen Sinn, weil WordPress wie gesagt mit Skripten auf die MySQL-Datenbank zugreift, die auf dem Webserver deines Webhosters installiert ist.

    Für den direkten Zugriff mit anderen SQL-Anwendungen ist der Datenpfad zu dieser WP-Datenbank erforderlich.

    Dazu ist nicht nur eine Angabe notwendig, auf welchem Server die Daten liegen (Server rdbms.strato.de), sondern sie müssen vermutlich auch in einem bestimmten Format vorliegen – auch das ist eine Anforderung, die uns so nicht bekannt war.
    Das Plugin speichert alle Daten in einem einzigen Datenbankfeld als serialisierte Daten ab:

    Screenshot Datenbank
    (zum Vergrößern anklicken)

    Du wirst also entweder deine SQL-Anwendung so erweitern müssen, dass die serialisierten Daten so eingelesen werden, wie sie benötigt werden oder selber ein Plugin programmieren, dass die Daten im gewünschten Format ablegt. Da niemand ahnen kann, in welcher Form du Daten haben möchtest, wird es dazu auch keine fertige Lösung geben, sondern du musst selber etwas programmieren (lassen).

    Da bei diesem Thread mehrmals „die Spielregeln geändert wurden“, indem du (trotz Nachfrage) erst nachträglich weitere Anforderungen genannt hast, werde ich mich im Thread nicht weiter beteiligen, wünsche aber viel Erfolg für dein Projekt.

    Thread-Ersteller hans37

    (@hans37)

    Die Sache ist nun klar:
    Die Formular-Daten werden
    a) in einer mySQL-Datenbank des Providers (Strato)
    b) in einer Tabelle arzq_db7_forms (im vorliegenden Fall)
    c) in den Feldern form_value (im CSV-Format, mit ; als Trenner) und form_date (als timestamp)
    gespeichert.
    Mehr wollte ich nicht wissen – danke für die Hilfen.

    in den Feldern form_value (im CSV-Format, mit ; als Trenner)

    Das stimmt nicht ganz. 🤓

    Die serialisierten Daten werden etwas anders angelegt als CSV-Dateien. Hier sind zusätzlich Informationen über die Inhaltsart (z.B. a:6 für ein Array mit 6 Eintrags-Paaren, s:16 für einen Textstring mit einer Länge von 6 Zeichen) enthalten, die du bei CSV-Dateien nicht hast. Da wird nur per Komma getrennt: „Comma Separated Values“.

Ansicht von 12 Antworten - 16 bis 27 (von insgesamt 27)