WordPress
Das $ wpdb-Objekt
Suche…
Bemerkungen
Es gibt zwei Möglichkeiten, auf das Objekt $wpdb
. Die erste besteht darin, das PHP-Schlüsselwort global
zu verwenden, um auf die globale Instanz des Objekts zu reagieren.
global $wpdb;
echo $wpdb->prefix;
// Outputs the prefix for the database
Die zweite Möglichkeit, das $wpdb
Objekt zu verwenden, besteht darin, die globale $GLOBALS
PHP zu $GLOBALS
.
echo $GLOBALS['wpdb']->prefix;
// This will also output the prefix for the database
Der zweite Weg wird entmutigt, da er möglicherweise nicht als bewährte Methode angesehen wird.
Variable auswählen
In der einfachsten Form ist es möglich, eine einzelne Variable aus einer Tabelle auszuwählen, indem die Methode get_var
des Objekts get_var
wird, die in einer SQL-Abfrage übergeben wird.
global $wpdb;
$user = $wpdb->get_var( "SELECT ID FROM $wpdb->users WHERE user_email='[email protected]'" );
Es ist sehr wichtig zu beachten, dass nicht vertrauenswürdige Werte, die in Abfragen verwendet werden, zum Schutz vor Angriffen geschützt werden müssen . Dies kann mit der prepare
des Objekts erfolgen.
global $wpdb;
$email = $_POST['email'];
$user = $wpdb->get_var(
$wpdb->prepare( "SELECT ID FROM $wpdb->users WHERE user_email=%s", $email )
);
if( !is_null( $user ){
echo $user;
} else {
echo 'User not found';
}
Mehrere Zeilen auswählen
Sie können get_results verwenden, um mehrere Zeilen aus der Datenbank abzurufen.
global $wpdb;
$userTable =$wpdb->prefix."users";
$selectUser = $wpdb->get_results("SELECT * FROM $userTable");
Dadurch wird die Liste aller Benutzer in einem Array angezeigt.