nutzen der datenbank - frage

  • ich hab mal ne (dämliche) frage

    ich will mit der datenbank arbeiten, bin mir aber leicht unsicher über den returnwert. folgendes will ich zb machen:

    PHP
    $var = $wpdb->query('SELECT * FROM ´table´');
    while ( $row = mysql_fetch_assoc( $var ) ) {
    //do something
    }

    ginge das überhaupt (sofern die query richtig ist)? ich bin mir unsicher weil eine "zahl" angeblich returnd wird, und keine resouce. ich hab leider kein beispiel zum ausprobieren. kann mir da jemand zufällig anleitung geben?

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Alle Infos dazu stehen hier:
    http://codex.wordpress.org/Function_Reference/wpdb_Class

    Ich würde annehmen, dass Du die Methode get_results anstatt query benötigst. Das Ergebnis muss dann sicher nicht durch eine MySQL-Methode durch. Im zweiten Parameter kannst Du angeben, was Du zurückkriegen möchtest.

    Mit der query-Methode lese ich gerade ist es normal, dass eine Zahl zurückgegeben wird: "The function returns an integer corresponding to the number of rows affected/selected. If there is a MySQL error, the function will return FALSE." das ist also für Sachen wie ein Delete gedacht, wo Du nicht das Ergebnis haben möchtest.

  • also in diese richtung:

    PHP
    $var = $wpdb->get_results( 'SELECT * FROM ´table´', ARRAY_A );
    foreach ($var as $key) {
    echo $var[$key][id];
    }

    oder als fetch_objekt:

    PHP
    $var = $wpdb->get_results( 'SELECT * FROM ´table´', OBJECT );
    foreach ($var as $key) {
    echo $var[$key]->id;
    }

    müsste dann doch so klappen, oder? wenn ich das jetzt richtig verstanden habe

    achja: danke für den link, den hab ich bie google und wordpress.org selbst nicht gefunden, wahrscheinlich zu blöd zu suchen :-D

  • Ja, so müsste das gehen. Ich glaube aber, Du brauchst in beiden Fällen das $var nicht mehr im Innern der Schleife. Einfach mit $key['id'] oder $key->id auf die Eigenschaften zugreifen.

  • super funktioniert =)

    ansosnten wäre der code damit es wie du sagst funktioniert:

    PHP
    foreach ($var as $key => $value) {
    echo $value->id;
    }

    ;-) den key anzusprechen macht nicht ganz so sinn, aber den wert dahinter schon^^
    aber danke, klappt alles wies soll =)

  • Ja klar, $key war Unsinn. Ich bin auch nicht immer so ganz bei der Sache. ;-) Danke fürs Posten der richtigen Lösung. Das freut sicher den einen oder anderen, der hier per Google landet.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!