1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

wpdb tabellen als user anlegen lassen

Dieses Thema im Forum "Plugin-Vorstellung" wurde erstellt von BunzBunz, 16. Juli 2008.

  1. BunzBunz

    BunzBunz New Member

    Registriert seit:
    16. Juli 2008
    Beiträge:
    2
    Zustimmungen:
    0
    Hallo zusammen,
    ich bastel grade an einer Pluginerweiterung zum GeoAddress-plugin.
    Weiteres verwendetes Plugin: Registered Only

    Mein Ziel:
    Jeder Benutzer soll seine eigene Kontakt-Datenbank haben.

    Meine Ansatz:
    Ich lese die Userdaten via action "user_register" oder "wp_login" mit einer function aus:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Ich hab schon mit echo getestet, was in der Variable steht: Tatsächlich der User. Wenn ich jetzt als Admin beim Login für einen Aufruf sorge, dann legt er auch brav die Tabelle an.
    Aber als User darf er das scheinbar nicht? Da ich auch ein User-level-plugin drin hab, hab ich einem Testuser mal das Level 10 verpasst - bringt nix. Aber echo bestätigt mir, dass in der Variable die tatsächlichen gewünschten Daten drin stehen.

    Was wäre die Lösung?
    Muss ich die Variablen irgendwo hin übergeben das der Admin die dann übernimmt oder bekommt man das hin, dass die User in die DB schreiben dürfen?

    Irgendwie stehe ich mittler Weile auf dem Schlauch. :confused:
     
  2. marX

    marX Well-Known Member
    Ehrenmitglied

    Registriert seit:
    5. Oktober 2006
    Beiträge:
    12.943
    Zustimmungen:
    0
  3. BunzBunz

    BunzBunz New Member

    Registriert seit:
    16. Juli 2008
    Beiträge:
    2
    Zustimmungen:
    0
    Komische Fehler?

    Hallo zusammen,

    hab jetzt mal Deinen Vorschlag ausprobiert und an verschiedenen Stellen im Page-Template das hier eingefügt:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Dabei hab ich dann das hier bekommen:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    und zwar hier (reduziert):

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    :confused:
    Damit hab ich ja garnicht gerechnet - ich glaub dass das auch nix mit meinem Problem zu tun hat. Allerdings stellt sich dann die Frage: "Warum gibts keine passenden Fehlermeldungen?"

    Wenn mir hier keiner weiterhelfen kann, wäre ich dankbar für einen Tipp, wo ich mal versuchen könnte zu fragen...

    OK: Ich hab den $wpdb->print_error(); aufruf nochmal höher eingefügt. Das hat nix mit meinem Problem zu tun.
     
    #3 BunzBunz, 18. Juli 2008
    Zuletzt bearbeitet: 18. Juli 2008
  4. Partner

    Partner Member

    Registriert seit:
    24. Februar 2008
    Beiträge:
    5
    Zustimmungen:
    0
    So klappts

    Hallo zusammen,

    hab das mit den User-DBs jetzt hinbekommen.

    Im Template (Fazit weiter unten...):

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Ich hab da glaub ich was nicht kapiert !!
    Kann mir mal jemand den Kopf waschen:

    Was muss ich machen, damit die $Variablen auch Werte haben, die dann in die DB gehen. Ich hab so die Vermutung, dass ich die entweder irgendwo übergeben muss, oder dass die einfach nicht übergeben werden dürfen?

    Die Anmeldung ins Forum ist etwas tricky: Ich arbeite mit Konqueror/Firefox und hab das Problem, dass ich beim Antworten immer gesagt bekomme dass ich nicht eingeloggt bin.(Ja - Cookies sind an)

    Bitte Bitte mach sich einer die Mühe und drücke nach dem Login nochmal F5 = Lösung (ich kann mir vorstellen, dass die meisten die eine Antwort hätten, einfach nicht antworten, weil sie nicht mit dem Login klarkommen?)
     
  5. Partner

    Partner Member

    Registriert seit:
    24. Februar 2008
    Beiträge:
    5
    Zustimmungen:
    0
    Hab die Lösung

    Hallo zusammen,

    auch wenn ich hier keine Antwort bekommen habe, will ich für zukünftige Deppen wie mich :oops: hier die Lösung präsentieren:

    Nach einem "Submit" eines Formulars (also wenn man auf den Knopf "Absenden" gedrückt hat), werden die Variablen in ein sogenanntes Array gespeichert ($_POST)
    Diese Daten kann man dann abrufen und mit eine Funktion verarbeiten - also z.B. in eine Datenbank schreiben...

    Dazu muss man aber wissen, wie das genau aussehen muss. Genau da war mein Problem, denn weil ich das nicht genau wusste, war ich unsicher und hab mich immer wieder verrant..

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    cpName='". $_POST["cpName"]"', ist also die Lösung! $_POST ist der Name es Arrays und "cpName" ist ein Feld im Array. cpName= gehört zum SQL-String, der dann ausgeführt wird.

    Ach ja - leider kann man scheinbar nicht auf die "add_action" verzichten (momentan testweise auf wp_head). Man kann die Funktionen ja theoretisch auch mit do_action aufrufen. Die Funktion würde dann nicht im sogenannte "Loop" laufen und den Blog langsamer machen.
    Mein Plan war es, do_action an das absenden des Formulars zu knüpfen.

    Anmerkung:
    Natürlich merkt ein Blinder mit dem Krückstock, dass ich PHP nie wirklich aktiv genutzt habe - ich bin eine Bash-Kind.:-?
     
  6. marX

    marX Well-Known Member
    Ehrenmitglied

    Registriert seit:
    5. Oktober 2006
    Beiträge:
    12.943
    Zustimmungen:
    0
    Aaaaaahhhhh!!!! Bitte NIEMALS ungeprüfte und ungefilterte Eingaben so verarbeiten!
    FAQ der Newsgroups de.comp.lang.php.* - 12.11.*Prüfe importierte Parameter. Traue niemandem

    Dann Grundlagen PHP und Datenbankprogrammierung lernen. Tutorials gibts ohne Ende im Netz.
    (Übrigens war für mich aus deiner Ausgangsfrage nicht ersichtlich, dass du nicht weißt, wo Variablen nach einem Formular-Submit stehen.)

    Doch schon, kommt drauf an wie du das ganze angehst. Ich würde ein Seitentemplate für das Ganze verwenden, dann ist der Code auch nur in diesem Template enthalten, und man spart sich die Actions und Filter.
    (In deinem Fall wäre übrigens der "wp"-Hook etwas sinnvoller, da bei wp_head() möglicherweise schon Ausgaben gemacht wurden und es so evtl. zu Fehlermeldungen kommen kann - je nachdem welche Daten du wie verarbeitest)

    Wie gesagt, Grundlagen PHP. Sonst hast du nicht lange Freude an deinem Code bzw. an WordPress...
     
  7. Alphawolf

    Alphawolf Well-Known Member
    Ehrenmitglied

    Registriert seit:
    31. Mai 2005
    Beiträge:
    3.315
    Zustimmungen:
    0
    *startet Wiederbelebungsmaßnahmen* Geht's wieder?
     
  8. marX

    marX Well-Known Member
    Ehrenmitglied

    Registriert seit:
    5. Oktober 2006
    Beiträge:
    12.943
    Zustimmungen:
    0
    *röchel* *hust* Danke, geht wieder... :|
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden