prepare(" WHERE user_id=%d ", $user_ID); if(!empty($_REQUEST['add'])) { if(!$is_admin) { // make sure I work with my campaign $exists = $wpdb->get_var($wpdb->prepare("SELECT id FROM ".AMYLITE_CAMPAIGNS." WHERE id=%d AND user_id=%d", $_POST['campaign_id'], $user_ID)); if(empty($exists)) wp_die(__('You can only add ads to your own campaigns', 'amylite')); } $wpdb->query($wpdb->prepare("INSERT INTO ".AMYLITE_ADS." (code, label) VALUES (%s,%s)", $_POST['code'], $_POST['label'])); $id=$wpdb->insert_id; // insert campaign $wpdb->query($wpdb->prepare("INSERT INTO ".AMYLITE_ADS_CAMPAIGNS." (ad_id, campaign_id) VALUES (%d,%d)",$id, $_POST['campaign_id'])); } if(!empty($_REQUEST['save'])) { if(!$is_admin) { // make sure I work with my campaign $exists = $wpdb->get_var($wpdb->prepare("SELECT id FROM ".AMYLITE_CAMPAIGNS." WHERE id=%d AND user_id=%d", $_POST['campaign_id'], $user_ID)); if(empty($exists)) wp_die(__('You can only edit ads to your own campaigns', 'amylite')); } $wpdb->query($wpdb->prepare("UPDATE ".AMYLITE_ADS." SET code=%s, label=%s WHERE id=%d", $_POST['code'], $_POST['label'], $_POST['id'])); $wpdb->query($wpdb->prepare("UPDATE ".AMYLITE_ADS_CAMPAIGNS." SET campaign_id=%d WHERE ad_id=%d", $_POST['campaign_id'], $_POST['id'])); } if(!empty($_REQUEST['del'])) { if(!$is_admin) { // make sure I work with my campaign $campaign_id = $wpdb->get_var($wpdb->prepare("SELECT campaign_id FROM ".AMYLITE_ADS_CAMPAIGNS." WHERE ad_id=%d", $_POST['id'])); $campaign = $wpdb->get_row($wpdb->prepare("SELECT * FROM ".AMYLITE_CAMPAIGNS." WHERE id=%d", $campaign_id)); if($campaign->user_id != $user_ID) wp_die(__('You can only delete your own ads', 'amylite')); } $wpdb->query($wpdb->prepare("DELETE FROM ".AMYLITE_ADS." WHERE id=%d", $_POST['id'])); $wpdb->query($wpdb->prepare("DELETE FROM ".AMYLITE_ADS_CAMPAIGNS." WHERE ad_id=%d", $_POST['id'])); } // select campaigns $campaigns = $wpdb->get_results("SELECT * FROM ".AMYLITE_CAMPAIGNS." $userid_sql ORDER BY name"); $cids = array(0); foreach($campaigns as $campaign) $cids[] = $campaign->id; $cid_sql = implode(",", $cids); $campaign_id_sql = $is_admin ? '' : " AND tAC.campaign_id IN ($cid_sql) "; // select ads $ads=$wpdb->get_results("SELECT tA.*, tAC.campaign_id as campaign_id FROM ".AMYLITE_ADS." tA, ".AMYLITE_ADS_CAMPAIGNS." tAC WHERE tA.id=tAC.ad_id $campaign_id_sql GROUP BY tA.id ORDER BY tA.label"); ?>

You can create any number of ads and assign them to a given campaign. One ad will be displayed at a time.

LabelAd CodeCampaignCreate
LabelAd CodeCampaignSave