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

Welche Variable liefert Datenbank-Namen

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von redunzl, 16. Juli 2005.

  1. redunzl

    redunzl Well-Known Member

    Registriert seit:
    25. Oktober 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Ich bastle gerade an einem Plugin bzw. an einer Modifikation. Frage hierzu:

    Wie heißt die wp-Variable, die mir den Namen der verwendeten Datenbak im Klartext liefert? Da ich einen sql-Query auf die gesamte Datenbank machen muss, brauche ich den Namen als Variable. Steh' total auf dem Schlauch. Vielleicht auch auf meiner Leitung...
     
  2. pichfl

    pichfl Well-Known Member

    Registriert seit:
    4. Juni 2005
    Beiträge:
    85
    Zustimmungen:
    0
    wenn ich mich nicht täusche, iwird das doch als global in der wp-config.php definiert -> einfach da nachschaun
     
  3. Sidney440

    Sidney440 Well-Known Member

    Registriert seit:
    15. Juli 2005
    Beiträge:
    90
    Zustimmungen:
    0
    Ich hab gerade das hier gefunden:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Das gibt dir alle Tabellennamen. Demnach müsste "DB_NAME" eine Konstante mit dem - Überraschung! - DB-Namen sein.

    Sid
     
  4. redunzl

    redunzl Well-Known Member

    Registriert seit:
    25. Oktober 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Das dachte ich auch. Mein Query heißt:

    $sql = "SHOW TABLE STATUS FROM " . $????;

    Wenn ich hier DB_NAME, $DB_NAME oder weiß ich was einsetze geht der Query schief. Schreibe ich

    $sql = "SHOW TABLE STATUS FROM tatsächlicher_name";

    klappt alles hervorragend. Ich krieg die Krise. Das muss doch möglich sein. Die Tables haben alle Variablennamen. Die stehen in der wp-settings.php
     
  5. pichfl

    pichfl Well-Known Member

    Registriert seit:
    4. Juni 2005
    Beiträge:
    85
    Zustimmungen:
    0
    ich glaub, dass es da ein problem gibt mit sql und php, so dass sql versucht, eine table mit dem Variablennamen zu finden. (also "$irgendwas")

    viell. kplatts, wenn du das ganze per echo einbindest (uh, ich glaub, das ist illegal und nicht wirklich elegant, aber meine php-kenntnisse sind nicht grade die besten und in letzter zeit etwas eingerostet)
     
  6. redunzl

    redunzl Well-Known Member

    Registriert seit:
    25. Oktober 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Oh, ich IDIOT.
    Konstanten werden in PHP anders behandelt als Variablen. Kein $ und so Zeugs.

    $sql = "SHOW TABLE STATUS FROM " . DB_NAME; // ohne $

    Mann, bin ich blöd. Danke für den Fingerzeig.
     
  7. Sidney440

    Sidney440 Well-Known Member

    Registriert seit:
    15. Juli 2005
    Beiträge:
    90
    Zustimmungen:
    0
    Du brauchst für deine Query dann die einzelnen Tabellennamen, nicht den DB-Namen. Die Standard-Tabellen stehen in $wpdb (zB $wpdb->postmeta), aber wenn du wirklich alle Tabellen abgreifen willst (also auch die, die per Plugin dazugekommen sind), musst du in etwa folgendes machen:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Dann hast du in $tables ein Array mit allen Tabellennamen. Danach kannst du dann deine Query machen:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Sid
     
  8. redunzl

    redunzl Well-Known Member

    Registriert seit:
    25. Oktober 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Mir ging's um bestimmte Werte. Und die liefert der Query SHOW TABLE STATUS FROM. Ich brauche nicht die Tabellen im Einzelnen, sondern nur bestimmte Werte ALLER Tabellen in Summe. Das geht per Array aus obigem Query und anschließendem Auslesen per FOR i = ... dieser Werte. Und dieser Query braucht halt den Datenbanknamen und jetzt funzt es...

    Danke und schönen Nachmittag (bei 33 Grad!)
     
  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