Index: branches/dev/html/shopping/complete.php
===================================================================
--- branches/dev/html/shopping/complete.php	(revision 13957)
+++ branches/dev/html/shopping/complete.php	(revision 14108)
@@ -207,5 +207,5 @@
 	lfDeleteTempOrder($objQuery, $uniqid);
 	// ¥­¥ã¥ó¥Ú¡¼¥ó¤«¤é¤ÎÁ«°Ü¤Î¾ì¹çÅÐÏ¿¤¹¤ë¡£
-	if($objCampaignSess->getIsCampaign()) {
+	if($objCampaignSess->getIsCampaign() and $objCartSess->chkCampaign()) {
 		lfRegistCampaignOrder($objQuery, $objCampaignSess, $order_id);
 	}
Index: branches/dev/html/install/user_data/include/campaign/default/src/index.php
===================================================================
--- branches/dev/html/install/user_data/include/campaign/default/src/index.php	(revision 37)
+++ branches/dev/html/install/user_data/include/campaign/default/src/index.php	(revision 14108)
@@ -73,5 +73,5 @@
 		}
 		$objCartSess->setPrevURL($_SERVER['REQUEST_URI']);
-		$objCartSess->addProduct(array($_POST['product_id'], $classcategory_id1, $classcategory_id2), $_POST[$quantity]);
+		$objCartSess->addProduct(array($_POST['product_id'], $classcategory_id1, $classcategory_id2), $_POST[$quantity], true);
 		header("Location: " . URL_CART_TOP);
 		exit;
Index: branches/dev/data/class/SC_CartSession.php
===================================================================
--- branches/dev/data/class/SC_CartSession.php	(revision 13453)
+++ branches/dev/data/class/SC_CartSession.php	(revision 14108)
@@ -173,5 +173,5 @@
 	
 	// ¥«¡¼¥È¤Ø¤Î¾¦ÉÊÄÉ²Ã
-	function addProduct($id, $quantity) {
+	function addProduct($id, $quantity, $is_campaign) {
 		$find = false;
 		$max = $this->getMax();
@@ -182,4 +182,5 @@
 				if(strlen($val) <= INT_LEN) {
 					$_SESSION[$this->key][$i]['quantity']+= $quantity;
+                    if($is_campaign) $_SESSION[$this->key][$i]['is_campaign'] = $is_campaign;
 				}
 				$find = true;
@@ -190,4 +191,5 @@
 			$_SESSION[$this->key][$max+1]['quantity'] = $quantity;
 			$_SESSION[$this->key][$max+1]['cart_no'] = $this->getNextCartID();
+            if($is_campaign) $_SESSION[$this->key][$max+1]['is_campaign'] = $is_campaign;
 		}
 	}
@@ -323,4 +325,17 @@
 	}
     
+    /**
+     * ¥«¡¼¥È¤ÎÃæ¤Î¥­¥ã¥ó¥Ú¡¼¥ó¾¦ÉÊ¤Î¥Á¥§¥Ã¥¯
+     * @param void
+     * @return boolean True:¥­¥ã¥ó¥Ú¡¼¥ó¾¦ÉÊÍ­¤ê False:¥­¥ã¥ó¥Ú¡¼¥ó¾¦ÉÊÌµ¤·
+     */
+	function chkCampaign(){
+		$max = $this->getMax();
+		for($i = 0; $i <= $max; $i++) {
+			if($_SESSION[$this->key][$i]['is_campaign']) return true;
+		}
+        
+		return false;
+	}    
 
 }
