[英]wpdb foreach loop with if/else statement
我知道這個問題已經被問過數百遍了,但是如果有人可以幫助我找出問題所在(或幫助我更好地編寫),我將跳過某個步驟,對此我將不勝感激。
我正在使用wordpress / woocommerce。 當用戶購買產品時,我會在表格中插入以下內容:user_id,電子郵件,product_id,時間戳。
在每個產品頁面上,我都試圖編寫一些遍歷表格的代碼,以檢查用戶是否購買了相應的視頻; 如果是這樣,它將顯示視頻,否則,將顯示一些文本。
我的邏輯有點不對勁,或者我做得太多了,但是我嘗試遵循抄本中的示例 。 現在,下面的代碼將顯示該頁面的視頻(因為我已經購買了它),但是如果沒有,它將不顯示else文本; 我將有6-9個視頻,因此,如果我可以使此代碼更高效,我將很樂意學習如何做。 謝謝。 這是我的代碼:
global $wpdb;
$user_id = get_current_user_id();
$results = $wpdb->get_results("SELECT * FROM awdwp_webinar_orders WHERE user_id=" . $user_id . "");
if ( $results ) {
foreach( $results as $result ) {
$loop_uid = $result->user_id;
$loop_pid = $result->product_id;?>
if ( is_product(991) && $loop_uid == $user_id && $loop_pid == 991 ) {
echo '<h2>' . get_the_title($id) . '<h2>';
$the_video = get_field('video_file');
//display video code
} //end if
} //end foreach
} else {
echo "please purchase";
}
這樣解決:
global $product;
global $wpdb;
$id = $product->id;
$user_id = get_current_user_id();
$results = $wpdb->get_results("SELECT * FROM awdwp_webinar_orders WHERE product_id=" . $id . "");
if ( $results ) {
foreach( $results as $result ) {
$loop_uid = $result->user_id;
$loop_pid = $result->product_id;
if ( is_product(991) && $loop_uid == $user_id ) {
//code
} else {}
}
}
global $wpdb;
$user_id = get_current_user_id();
$results = $wpdb->get_results("SELECT * FROM awdwp_webinar_orders WHERE user_id=" . $user_id . "");
if ( $results ) {
foreach( $results as $result ) {
$loop_uid = $result->user_id;
$loop_pid = $result->product_id;?>
if ( is_product(991) && $loop_uid == $user_id && $loop_pid == 991 ) {
echo '<h2>' . get_the_title($id) . '<h2>';
$the_video = get_field('video_file');
//display video code
}else{
echo "please purchase";
}//end if
} //end foreach
} else {
echo "please purchase";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.