Hi!
Ich bin gerade dabei mein erstes Wordpress-Plugin zu schreiben.
Der Sinn des Plugins ist erstmal nebensächlich, mache es eigentlich nur
um es zu verstehen und zu lernen. Vielleicht kann ich dann irgendwann mal ein
gescheites schreiben http://forum.wpde.org/images/smilies/icon_wink.gif
Aber nun zu meiner Frage:
Mein derzeitiges Plugin stellt ein Formular als shortcode bereit,
daraus möchte ich die Formulardaten in die Datenbank schreiben.
Welche ich später im Backend auslesen will und auf einer extra Backendseite
ausgeben möchte.
Bisher erledigt:
Plugin wird als Plugin erkannt
Plugin hat seine eigene Backendseite
Plugin stellt ein Formular bereit via shortcode
Jetzt hänge ich daran die Formulardaten in die DB zu schreiben.
Kann mir hier jemand helfen? Finde nichts im Netz was mich weiter bringt.
[PHP]<?php function form_creation(){?>
Dein Name:
Telefon:
Ich will von:
Nach:
Anmerkungen:
Anfordern
[/PHP]
Wonach suchst du? Nach Gummibärchen mit Colageschmack? Solche Aussagen sollte man sich besser verkneifen, denn das Verarbeiten von Formulardaten und speichern in eine DB sind Standardanwendungen, zu denen es endlos viele Tutorials gibt!
Und genau deshalb antworte ich so wie oben. Fakt ist, dass man sehr wohl massenhaft Tutorials zu demThema findet, aber du zeigst ja noch nicht mal einen Ansatz eines Versuches. Poste doch mal, was du versuchst hast. Bisher hat man nur den Eindruck, dass du auf eine fertige Lösung wartest.
Ich mag dir jetzt nicht den ganzen Code schicken da dort wenig Lerneffekt dabei ist. Wenn du aber deinen Code zusammen gestellt hast kannst du Ihn gerne posten dann könnte ich oder jemand anders ja mal drüber schauen und ggf. Hilfestellung geben.
LG
Eistee - Eiskalt
Also ich habe es in der Zwischenzeit nochmal intensiver versucht und bin zu folgendem Ergebnis gekommen…
[PHP]<?php
$con = mysql_connect(„localhost“, „root“, „root“) or die („Keine Verbindung zum MySQL-Server möglich“);
mysql_select_db(„wordpress“, $con) or die („Keine Verbindung zur Datenbank möglich“);
if (get_magic_quotes_gpc() == 1)
{
foreach ($_POST AS $key => $postvar)
$_POST[$key] = stripslashes($postvar);
}
$result = mysql_query($sql,$con);
if (!$result) echo mysql_error();
mysql_close($con);
?>[/PHP]
Damit kann ich die Daten aus dem Formular in die Datenbank schreiben,
jedoch muss ich hier die Datenbank, Nutzer, PW eintragen… wenn ich das richtig verstanden habe
kann ich doch auch irgendwie mit "global $wpdb; " eine Verbindung aufbauen oder?
Diese Erweiterung ist seit PHP 5.5.0 veraltet und es wird nicht für neuen Code empfohlen, da sie in der Zukunft entfernt wird. Stattdessen sollten entweder die mysqli oder PDO_MySQL Erweiterungen genutzt werden.
Ich kenne mich mit WordPress nicht aus aber schau mal, wie WordPress mit der Datenbank verbindet. Vielleicht mit mysqli. Dann brauchst du nur die mysqli-Funktionen benutzen. Oder hat WordPress vielleicht eigene Datenbank-Funktionen?
Wenn die Verbindung zu dem Zeitpunkt wo das Formular aufgerufen wird schon besteht, kannst du dir mysql_connect echt sparen.
Weißt du wo du suchen musst?
Sonst frag echt mal in einem WordPress-Forum.