ChrisHaSaar
Grünschnabel
Ich grüße Euch... ![Smile :) :)](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f642.png)
Ich habe eine Herausforderung, die ich, weil ich seit über 10 Jahren "raus" aus der Materie bin, als einfache "Wenn Dann" Abfragen nicht hinbekomme.
Die Situation:
Mein Kollege hat einen Wordpress-Blog installiert, in dem zum Test gut 900 von etwa 122.000 Benutzer werkeln, alle seine Vertriebler.
Die Company hat es zur Auflage gemacht, dass wirklich nur seine Vertriebler aus wettbewerbsgründen dort Zugang haben.
Das soll über die Vertriebler-ID (tp_nummer), die bei der Registrierung eingegeben werden muss, geregelt werden.
Diese Nummern werden wöchentlich aus dem Rechner der Company exportiert und in die Datenbank in eine neue Tabelle `downline_report` importiert werden.
Drei Tabellen sind für das, was ich brauche, wichtig:
`wp_users` = Hier werden von Wordpress die User-ID (Primery) definiert
`wp_usermeta` = Hier werden die Vertriebler-IDs gespeichert, die die User bei der Registration eingeben
`downline_report` = Hier ist die Importdatei der Company. 122.000 Datensätzen in 80 Spalten.
Die Tabelle `wp_usermeta` ist leider keine herkömmliche Tabelle, denn dort wird alles als Meta-Daten der User gespeichert, in transponierter Reihenfolge.
und das macht es für mich so nervig, die Abfragen zu verknüpfen.
Hier die kleine Übersicht der Daten, die ich brauche:
Damit ihr Euch ein Bild machen könnt:
Tabelle 1 Abfrage:
![1632861635970.png 1632861635970.png](https://www.tutorials.de/data/attachments/52/52606-a47cd9cd09c748afca51411bd27724f5.jpg?hash=pHzZzQnHSK)
Tabelle 2 Abfrage:
![1632861015136.png 1632861015136.png](https://www.tutorials.de/data/attachments/52/52604-55e440b429a7a85406e872740fef44e9.jpg?hash=VeRAtCmnqF)
(die importierte) Tabelle 3 Abfrage:
![1632861349357.png 1632861349357.png](https://www.tutorials.de/data/attachments/52/52605-d3d6d217a34c5c5ed163e60c9376ca8f.jpg?hash=09bSF6NMXF)
Im Grunde ist es recht einfach:
Wenn der neue User sich registriert, soll in der Tabelle `downline_report` geschaut werden, ob diese '01Customer_number' dort eingetragen ist.
Wenn ja, dann update die Spalte `level_id` in der Tabelle `wp_ihc_user_levels` mit dem Wert "2".
(gleichbedeutend mit Abonnement/Level: "Eigenes Team")
Wenn nein, dann update die Spalte `level_id` in der Tabelle `wp_ihc_user_levels` mit dem Wert "4".
(gleichbedeutend mit Abonnement/Level: "Hold")
Ich bin wirklich aufgeschmissen, seit gut 1 Woche gern 13, 14 Std. am Tag befasse ich mich damit, habe gefühlte 3000 Tutorials hinter mir, doch es klappt nicht.
Ich bin mit meiner Weissheit am Ende.
Das Ganze muss ich dann einmal komplett durchlaufen lassen, was mich dann zum nächsten Problem bringt:
Diese blöde wp_usermeta, bei der ich mehrere Parameter brauche, um den richtige Wert anzuzeigen, will mir einfach ne Suche nicht erlauben.
Vorzugsweise soll die funktionierende Abfrage dann in php eingefasst werden, damit sie nach dem Registrierungsprozess gleich ausgeführt wird, somit brauche ich nach dem erfolgreichen Abgleich dann nur noch die wöchentlich diejenigen zu prüfen, die den Wert "2" in der Tabelle `wp_ihc_user_levels` bekommen haben.
Ist die "wp_usermeta.meta_key = tp_nummer" als "downline_report.01Customer_number" vorhanden, wird in der Tabelle `wp_ihc_user_levels` mit dem Wert "2" (Eigenes Team) versehen, ansonsten endgültiger Wechsel in die "6" (Fremdstruktur).
Konntet Ihr mir folgen?
Eigentlich ganz einfach:
1. wenn tp_nummer in downline_report.01Customer_number steht, dann alles gut, Level "Eigenes Team"
2. wenn nicht, dann Level "Hold" bis zum nächsten Abgleich in einer Woche, wenn drin, dann 1., wenn nein, dann Level "Fremdstruktur".
Ach, das mit der Posiion können wir erstmal lassen. Denn da muss ihc dann den Wert ebenfalls in der Meta-.Datei abgleichen und berichtigen, da einige Vertriebler im Rang steigen. Bei verschiedenen Rängen gibts dann auch anderen Content.
Wenn ich wenigstens erst einmal die SQL-Befehle habe, den Rest schaffe ich dann wieder.
Ich bin mir sicher, ich hatte die Lösung schon, aber echt, ich bin durch...![Big grin :D :D](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f600.png)
Danke schön jetzt für Die Mühe, Dir das durchzulesen.
Noch mehr Dank, wenn Du mir dann auch helfen kannst. Der nächste 6-Pack geht auf mich! Ehrensache...![Big grin :D :D](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f600.png)
![Smile :) :)](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f642.png)
Ich habe eine Herausforderung, die ich, weil ich seit über 10 Jahren "raus" aus der Materie bin, als einfache "Wenn Dann" Abfragen nicht hinbekomme.
Die Situation:
Mein Kollege hat einen Wordpress-Blog installiert, in dem zum Test gut 900 von etwa 122.000 Benutzer werkeln, alle seine Vertriebler.
Die Company hat es zur Auflage gemacht, dass wirklich nur seine Vertriebler aus wettbewerbsgründen dort Zugang haben.
Das soll über die Vertriebler-ID (tp_nummer), die bei der Registrierung eingegeben werden muss, geregelt werden.
Diese Nummern werden wöchentlich aus dem Rechner der Company exportiert und in die Datenbank in eine neue Tabelle `downline_report` importiert werden.
Drei Tabellen sind für das, was ich brauche, wichtig:
`wp_users` = Hier werden von Wordpress die User-ID (Primery) definiert
`wp_usermeta` = Hier werden die Vertriebler-IDs gespeichert, die die User bei der Registration eingeben
`downline_report` = Hier ist die Importdatei der Company. 122.000 Datensätzen in 80 Spalten.
Die Tabelle `wp_usermeta` ist leider keine herkömmliche Tabelle, denn dort wird alles als Meta-Daten der User gespeichert, in transponierter Reihenfolge.
![Frown :( :(](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f641.png)
Hier die kleine Übersicht der Daten, die ich brauche:
Tabelle 1 = wp_users | Tabelle 2 = wp_usermeta | Tabelle 3 = downline_report |
ID | user_id | 01Customer_number |
meta_key = tp_nummer | 03Position | |
meta_value = 66706 (z.B.) (Vertriebler-ID) |
Damit ihr Euch ein Bild machen könnt:
Tabelle 1 Abfrage:
![1632861635970.png 1632861635970.png](https://www.tutorials.de/data/attachments/52/52606-a47cd9cd09c748afca51411bd27724f5.jpg?hash=pHzZzQnHSK)
Tabelle 2 Abfrage:
![1632861015136.png 1632861015136.png](https://www.tutorials.de/data/attachments/52/52604-55e440b429a7a85406e872740fef44e9.jpg?hash=VeRAtCmnqF)
(die importierte) Tabelle 3 Abfrage:
![1632861349357.png 1632861349357.png](https://www.tutorials.de/data/attachments/52/52605-d3d6d217a34c5c5ed163e60c9376ca8f.jpg?hash=09bSF6NMXF)
Im Grunde ist es recht einfach:
Wenn der neue User sich registriert, soll in der Tabelle `downline_report` geschaut werden, ob diese '01Customer_number' dort eingetragen ist.
Wenn ja, dann update die Spalte `level_id` in der Tabelle `wp_ihc_user_levels` mit dem Wert "2".
(gleichbedeutend mit Abonnement/Level: "Eigenes Team")
Wenn nein, dann update die Spalte `level_id` in der Tabelle `wp_ihc_user_levels` mit dem Wert "4".
(gleichbedeutend mit Abonnement/Level: "Hold")
Ich bin wirklich aufgeschmissen, seit gut 1 Woche gern 13, 14 Std. am Tag befasse ich mich damit, habe gefühlte 3000 Tutorials hinter mir, doch es klappt nicht.
Ich bin mit meiner Weissheit am Ende.
Das Ganze muss ich dann einmal komplett durchlaufen lassen, was mich dann zum nächsten Problem bringt:
Diese blöde wp_usermeta, bei der ich mehrere Parameter brauche, um den richtige Wert anzuzeigen, will mir einfach ne Suche nicht erlauben.
Vorzugsweise soll die funktionierende Abfrage dann in php eingefasst werden, damit sie nach dem Registrierungsprozess gleich ausgeführt wird, somit brauche ich nach dem erfolgreichen Abgleich dann nur noch die wöchentlich diejenigen zu prüfen, die den Wert "2" in der Tabelle `wp_ihc_user_levels` bekommen haben.
Ist die "wp_usermeta.meta_key = tp_nummer" als "downline_report.01Customer_number" vorhanden, wird in der Tabelle `wp_ihc_user_levels` mit dem Wert "2" (Eigenes Team) versehen, ansonsten endgültiger Wechsel in die "6" (Fremdstruktur).
Konntet Ihr mir folgen?
Eigentlich ganz einfach:
1. wenn tp_nummer in downline_report.01Customer_number steht, dann alles gut, Level "Eigenes Team"
2. wenn nicht, dann Level "Hold" bis zum nächsten Abgleich in einer Woche, wenn drin, dann 1., wenn nein, dann Level "Fremdstruktur".
Ach, das mit der Posiion können wir erstmal lassen. Denn da muss ihc dann den Wert ebenfalls in der Meta-.Datei abgleichen und berichtigen, da einige Vertriebler im Rang steigen. Bei verschiedenen Rängen gibts dann auch anderen Content.
Wenn ich wenigstens erst einmal die SQL-Befehle habe, den Rest schaffe ich dann wieder.
Ich bin mir sicher, ich hatte die Lösung schon, aber echt, ich bin durch...
![Big grin :D :D](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f600.png)
Danke schön jetzt für Die Mühe, Dir das durchzulesen.
Noch mehr Dank, wenn Du mir dann auch helfen kannst. Der nächste 6-Pack geht auf mich! Ehrensache...
![Big grin :D :D](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f600.png)
Zuletzt bearbeitet: