  | 
              
	              
	                
  
    
	 
        สอบถามเรื่องการ select ข้อมูลแบบ array หน่อยครับ พอดีไม่รู้จะเริ่มยังไง (มีcodeที่เขียนไว้ให้ดูครับ)     | 
   
  
    |   | 
   
 
 
 
	
		
			  | 
	   | 
	    | 
		
			  | 
	 
	
		
			  | 
		 		   | 
	  	    
          
            
			
	
			
			 
                Code (PHP) 
<?php
$objConnect = mysql_connect("localhost","root","root");
	$objDB = mysql_select_db("mydb");
	$strMemberID = "1";
	$i=0;
	$strSQL1 = "SELECT resultknn FROM members WHERE 1 AND memberID = '".$strMemberID."'  ";
	$objQuery1 = mysql_query($strSQL1);
	$obResult1 = mysql_fetch_array($objQuery1);
		//echo $obResult1[0];
		if ($obResult1[0] ==  "Food and Drink"){
				$i = 1;
	 			}
 			else if ($obResult1[0] ==  "Bag"){
				$i = 2;
 			}
 			else if ($obResult1[0] ==  "Clothes"){
				$i = 3;
 			}
 			else if ($obResult1[0] ==  "Travel"){
				$i = 4;
 			}
 			else if ($obResult1[0] ==  "Others"){
				$i = 5;
 			}
 			
 	$strSQL = "SELECT proID,proName,address,imgpath, DATE_FORMAT(startpro, '%d %b') startpro,DATE_FORMAT(endpro, '%d %b %Y') endpro FROM promotions WHERE 1 AND endpro>DATE(NOW()) AND typeID = $i ";
	$objQuery = mysql_query($strSQL);
	$intNumField = mysql_num_fields($objQuery);
	$resultArray = array();
	while($obResult = mysql_fetch_array($objQuery))
	{
		$arrCol = array();
		for($i=0;$i<$intNumField;$i++)
		{
			$arrCol[mysql_field_name($objQuery,$i)] = $obResult[$i];
		}
		array_push($resultArray,$arrCol);
	}
	
	mysql_close($objConnect);
	
	echo json_encode($resultArray);
?>
 
 
ตอนนี้ code เป็นประมาณนี้ครับ คือให้ไปดูว่า member คนนี้มี resultknn = อะไรอะครับ   แต่ตอนนี้ค่าใน database เป็นค่าธรรมดา จะไม่มี การเก็บแบบ array เช่น Bag,Clothes 
 
และค่า $i จะมี 1-5 โดยที่จะเป็น typeID ของตารางประเภทอะครับ 
 
แล้วทีนี้ ที่ผมติดคือ ถ้า resultknn ของคนที่ select ออกมาเป็น ( Bag,Clothes หรือ Others,Clothes,Travel ) ประมาณนี้ 
 
ตอนเรา select promotion ก็จะต้องเพิ่ม AND typeID = $i ข้างหลังที่มีมากกว่า 1 
 
 
คือจะทำยังไงให้ php รู้ว่า resultknn นี้ ต้อง select ที่มี type 1, 2หรือ 3 ประเภท อะครับ 
 
ขอบคุณล่วงหน้าครับ  
 
 
  Tag : PHP               
                        | 
           
          
            
		
  ประวัติการแก้ไข 2016-04-08 03:04:43	
                             | 
           
          
            
              
                   | 
                   | 
                   | 
               
              
                   | 
                
                    
                      | Date :
                          2016-04-08 03:03:47 | 
                      By :
                          nomzod | 
                      View :
                          881 | 
                      Reply :
                          4 | 
                     
                  | 
                   | 
               
              
                   | 
                   | 
                   | 
               
              | 
           
          
            | 
			 | 
           
         
	    
		             | 
		
			  | 
	 
	
		
			  | 
		  | 
		
			  | 
		
			  | 
	 
 
              
  
          
		
     
		
	  
        
             | 
            | 
            | 
             | 
         
        
             | 
                       | 
          
            
               
                 เพิ่มตาราง type_group  ให้เก็บ ตารางชื่อกลุ่ม ไว้ map ค่าเข้าหากัน 
จะให้ดี ใช้ตัวเลข เก็บ type จะทำงานได้ง่ายสดวกขึ้น                        
               
               | 
             
            
              
			                              
                              
              
                
                     | 
                     | 
                     | 
                 
                
                     | 
                  
                      
                        | Date :
                            2016-04-08 05:37:18 | 
                        By :
                            Chaidhanan | 
                         
                    | 
                     | 
                 
                
                     | 
                     | 
                     | 
                 
                | 
             
           
			         | 
             | 
         
        
             | 
            | 
             | 
             | 
         
          
	    
     
               
		
     
		
	  
        
             | 
            | 
            | 
             | 
         
        
             | 
                       | 
          
            
               
                 งงครับ ตอนนี้มี 
 
1. ตารางโปรโมชั่น(join กับ typeID ว่าคือปนะเภทอะไร) 
2. ตารางประเภท (เก็บเป็น typeId กับ typeName) 
3. ตารางผู้ใช้ อะครับ (เอาค่าในresultknn มาเพื่อดูว่าจะแสดงอะไรให้ผู้ใช้ โดนเก็บเป็น string)                        
               
               | 
             
            
              
			                              
                              
              
                
                     | 
                     | 
                     | 
                 
                
                     | 
                  
                      
                        | Date :
                            2016-04-08 07:26:13 | 
                        By :
                            nomzod | 
                         
                    | 
                     | 
                 
                
                     | 
                     | 
                     | 
                 
                | 
             
           
			         | 
             | 
         
        
             | 
            | 
             | 
             | 
         
          
	    
     
               
		
     
		
	  
        
             | 
            | 
            | 
             | 
         
        
             | 
                       | 
          
            
               
                 แต่ที่สงสัยหลักๆคือ จะรู้ได้ไงว่า คนนี้ผลลัพธ์ จะแสดงแค่ 1 อย่าง  คนนี้ 2อย่สง อีกคน3อย่าง  เพื่อจะกำหนดฟอร์มในการ select อะครับ                        
               
               | 
             
            
              
			                              
                              
              
                
                     | 
                     | 
                     | 
                 
                
                     | 
                  
                      
                        | Date :
                            2016-04-08 07:28:42 | 
                        By :
                            nomzod | 
                         
                    | 
                     | 
                 
                
                     | 
                     | 
                     | 
                 
                | 
             
           
			         | 
             | 
         
        
             | 
            | 
             | 
             | 
         
          
	    
     
               
		
     
		
	  
        
             | 
            | 
            | 
             | 
         
        
             | 
                       | 
          
            
               
                 resultknn นี่เก็บข้อมูลเป็น set ใช่ไหมครับ 
เก็บในรูปแบบ string สามารถมีหลาย element คั่นด้วย , (comma) 
 
ถ้าใช้ลองประยุกต์ใช้ตามโค๊ดข้างล่างดูครับ 
Code (SQL) 
select typeid , typename, member_id 
from member, grouptype 
where concat(',',resultknn,',') like concat('%,',typename,',%')
                        
               
               | 
             
            
              
			                              
                              
              
                
                     | 
                     | 
                     | 
                 
                
                     | 
                  
                      
                        | Date :
                            2016-04-08 10:47:33 | 
                        By :
                            Chaidhanan | 
                         
                    | 
                     | 
                 
                
                     | 
                     | 
                     | 
                 
                | 
             
           
			         | 
             | 
         
        
             | 
            | 
             | 
             | 
         
          
	    
     
      		  
	
     | 
   
 
                 |