WordPress
Objektet $ wpdb
Sök…
Anmärkningar
Det finns två sätt att referera till $wpdb
objektet. Den första är att använda PHP-nyckelordet global
för att agera på den globala instansen av objektet.
global $wpdb;
echo $wpdb->prefix;
// Outputs the prefix for the database
Det andra sättet att använda $wpdb
objektet är att referera PHP: s $GLOBALS
super globala variabel.
echo $GLOBALS['wpdb']->prefix;
// This will also output the prefix for the database
Det andra sättet är avskräckt eftersom det kanske inte betraktas som den bästa praxis.
Välja en variabel
I den mest grundläggande formen är det möjligt att välja en enda variabel från en tabell genom att kalla objektets get_var
metod som passerar i en SQL-fråga.
global $wpdb;
$user = $wpdb->get_var( "SELECT ID FROM $wpdb->users WHERE user_email='[email protected]'" );
Det är mycket viktigt att notera att alla opålitliga värden som används i frågor måste undvikas för att skydda mot attacker. Detta kan göras med hjälp av objektets prepare
.
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';
}
Välja flera rader
Du kan använda get_results för att få flera rader från databasen.
global $wpdb;
$userTable =$wpdb->prefix."users";
$selectUser = $wpdb->get_results("SELECT * FROM $userTable");
Detta visar alla användarlistor i array.