{"id":359,"date":"2017-03-19T08:28:32","date_gmt":"2017-03-19T07:28:32","guid":{"rendered":"http:\/\/evileu.de\/zum-schwarzen-pinguin\/?p=359"},"modified":"2017-03-19T08:28:32","modified_gmt":"2017-03-19T07:28:32","slug":"turnverein-die-mitglieder-stammdaten","status":"publish","type":"post","link":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/2017\/03\/19\/turnverein-die-mitglieder-stammdaten\/","title":{"rendered":"Turnverein: die Mitglieder-Stammdaten"},"content":{"rendered":"<h2>Woher kommen die Daten?<\/h2>\n<p>Wie im vorigen Artikel bereits angesprochen, gibt es ein in <strong>Contact Form 7<\/strong> erstelltes Anmeldeformular, das wird f\u00fcr die Erfassung aller Mitgliederdaten genutzt. Hacken sie einfach ein paar Testmitglieder mit unterschiedlichen Sportarten und Freizeitoptionen ein, so f\u00fcnf bis zehn St\u00fcck reichen f\u00fcr den Anfang. Contact Form 7 schickt ihnen zu jedem erfa\u00dften Formular ein E-Mail mit den zugeh\u00f6rigen Daten. Wir brauchen hier aber nur das Pa\u00dffoto, das als Attachment mitgeschickt wird, die anderen Daten werden in einer MySQL-Tabelle automatisch gespeichert.<\/p>\n<h2>Speichern der Formulardaten in einer Tabelle<\/h2>\n<p>Das zus\u00e4tzliche Plugin <strong>Save Contact Form 7<\/strong> sorgt daf\u00fcr, da\u00df die Formulardaten in einer Tabelle landen, mit der wir sp\u00e4ter weiterarbeiten k\u00f6nnen. Diese Tabelle hei\u00dft default-m\u00e4ssig savecontactform7_X, wobei X eine laufende Nummer ist. Da wir nur ein Kontaktformular haben, ist das die Nummer 1, folglich hei\u00dft unsere Tabelle savecontactform7_1. Von der machen wir uns zun\u00e4chst einmal eine Kopie: das geht im phpmyadmin unter &#8222;Operationen&#8220;, wir kopieren Struktur und Daten und geben der Tabelle einen aussagekr\u00e4ftigen Namen, die hei\u00dft jetzt <strong>mitglieder_stamm<\/strong>. Das wird unsere Arbeitstabelle. Warum eine Kopie? Weil wir noch am Testen sind. Im Real-Betrieb arbeitet man mit der &#8222;echten&#8220; Tabelle, damit man neu angemeldete Mitglieder auch in Echtzeit mitkriegt. Wir nutzen jetzt erstmal die Kopie unserer Mitglieder-Stammdaten und haben ein bi\u00dfchen Spa\u00df auf der Datenbank!<\/p>\n<h2>Struktur der Tabelle mitglieder_stamm<\/h2>\n<p>In der Tabellenstruktur spiegelt sich 1:1 unser Formular wieder:<\/p>\n<div id=\"attachment_361\" style=\"width: 611px\" class=\"wp-caption alignnone\"><img aria-describedby=\"caption-attachment-361\" decoding=\"async\" loading=\"lazy\" class=\"size-full wp-image-361\" src=\"http:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-content\/uploads\/2017\/03\/mitglieder_stamm_struktur.jpg\" alt=\"mitglieder_stamm_struktur\" width=\"601\" height=\"608\" srcset=\"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-content\/uploads\/2017\/03\/mitglieder_stamm_struktur.jpg 601w, https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-content\/uploads\/2017\/03\/mitglieder_stamm_struktur-297x300.jpg 297w\" sizes=\"(max-width: 601px) 100vw, 601px\" \/><p id=\"caption-attachment-361\" class=\"wp-caption-text\">mitglieder_stamm_struktur<\/p><\/div>\n<p>Ich geh mal von oben nach unten:<\/p>\n<ol>\n<li><strong>id<\/strong> wird von contact form 7 automatisch fortlaufend vergeben, das wird unser Schl\u00fcssel, die Mitglieds-Nummer<\/li>\n<li><strong>created_on<\/strong> Timestamp, wird von CF7 automatisch vergeben, brauchen wir eigentlich nicht<\/li>\n<li><strong>status<\/strong> das hab ich glatt unterschlagen: ich nutze das Plugin<strong> CF7 Dynamic Text Extension <\/strong>um ein &#8222;hidden&#8220;-Feld mitzugeben, das erh\u00e4lt defaultm\u00e4\u00dfig den Wert &#8222;neuzugang&#8220;. Wir werden sp\u00e4ter noch sehen, wozu wir das brauchen.<\/li>\n<li><strong>die restlichen Felder<\/strong>: sind 1:1 die selben wie in unserem Formular, das ist keine Hexerei.<\/li>\n<li>Das Feld <strong>zustimmung<\/strong> brauchen wir nur f\u00fcr die Datenschutzerkl\u00e4rung, das sieht in CF7 so aus:<\/li>\n<\/ol>\n<div id=\"attachment_363\" style=\"width: 892px\" class=\"wp-caption alignnone\"><img aria-describedby=\"caption-attachment-363\" decoding=\"async\" loading=\"lazy\" class=\"size-full wp-image-363\" src=\"http:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-content\/uploads\/2017\/03\/datenschutzerklaerung.jpg\" alt=\"datenschutzerklaerung\" width=\"882\" height=\"261\" srcset=\"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-content\/uploads\/2017\/03\/datenschutzerklaerung.jpg 882w, https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-content\/uploads\/2017\/03\/datenschutzerklaerung-300x89.jpg 300w, https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-content\/uploads\/2017\/03\/datenschutzerklaerung-768x227.jpg 768w, https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-content\/uploads\/2017\/03\/datenschutzerklaerung-624x185.jpg 624w\" sizes=\"(max-width: 882px) 100vw, 882px\" \/><p id=\"caption-attachment-363\" class=\"wp-caption-text\">datenschutzerklaerung<\/p><\/div>\n<p>Die mu\u00df mit rein, schlie\u00dflich erheben wir personenbezogene Daten!<\/p>\n<p>So, das wars schon. Ready to go, Testdaten drin? Dann gehts zur ersten Ausgabe im n\u00e4chsten Beitrag.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Woher kommen die Daten? Wie im vorigen Artikel bereits angesprochen, gibt es ein in Contact Form 7 erstelltes Anmeldeformular, das wird f\u00fcr die Erfassung aller Mitgliederdaten genutzt. Hacken sie einfach ein paar Testmitglieder mit unterschiedlichen Sportarten und Freizeitoptionen ein, so f\u00fcnf bis zehn St\u00fcck reichen f\u00fcr den Anfang. Contact Form 7 schickt ihnen zu jedem [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1,19,20,7,2],"tags":[],"_links":{"self":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/359"}],"collection":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/comments?post=359"}],"version-history":[{"count":4,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/359\/revisions"}],"predecessor-version":[{"id":365,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/359\/revisions\/365"}],"wp:attachment":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/media?parent=359"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/categories?post=359"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/tags?post=359"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}