J'ai un problème en écrivant la syntaxe SQL Inner Join dans wordpress, cette logique devrait fonctionner, j’ai essayé ceci dans phpmyadmin et cela fonctionne bien
SELECT booking_calendars.cal_name
FROM booking_calendars
INNER JOIN booking_reservation
ON booking_calendars.id = booking_reservations.calendar_id
WHERE status LIKE 'pending'
mais ce n'est pas dans wordpress
$pending_reservations = $wpdb->get_results("
SELECT booking_calendars.cal_name
FROM'.$wpdb->prefix.'booking_calendars AS booking_calendars
INNER JOIN' . $wpdb->prefix.'booking_reservation AS booking_reservations
ON booking_calendars.id = booking_reservations.calendar_id
WHERE status LIKE 'pending'");
et alors
echo "<h2>Pending Reservation: </h2><br>";
var_dump( $pending_reservations);
if($pending_reservations>0)
{
foreach ( $pending_reservations as $pending_reservation )
{
echo "<label>". $pending_reservation->cal_name."</label><br>";
}
}else{
echo "<label>No Pending Reservation</label><br>";
}
J'ai var_dumped $pending_reservations
et il retourne array(0) { }
dans wordpress
merci pour votre temps et grâce à @czerspalace, j'ai lancé la requête avec une double citation, puis je l'ai séparée par une seule citation. Après avoir regardé le résultat de l'écho, j'ai constaté qu'il n'y avait pas d'espace entre From
et table name
.
c'est la bonne façon
$pending_reservations = $wpdb->get_results('
SELECT booking_calendars.cal_name
FROM '.$wpdb->prefix.'booking_calendars AS booking_calendars
INNER JOIN '. $wpdb->prefix.'booking_reservation AS booking_reservations
ON booking_calendars.id = booking_reservations.calendar_id
WHERE status LIKE "pending"');