- 
	
			
				
					April 30th, 2016, 16:02
				
			
			
				
					#1
				
				
				
			
	 
	
		
		
			
				
				
				
					
 ثبت یک آرایه در یک فیلد از جدول mysql
				
				
						
							
							
						
						
				
					
						
							بعد از ساختن دسته بندی مطالب نوبت به ایجاد صفحه ( ایجاد پست ) رسیدم .
همه چیز اوکیه - و وقتی کاربر برای پستش دسته انتخاب میکنه ( id دسته های مورد نظر رو میریزم داخل یک ارایه ) . شما فرض کنید یک پست در چنتا دسته باشه . مثلا یک پست هم در زمینه سلامت باشه هم در زمینه ورزش و هم در زمینه بدنسازی .
حالا موقع ثبت آرایه مورد نظر در بانک اطلاعاتی میرسه . هر کاری میکنم نمیتونم همه id های داخل ارایه رو تو mysql ثبت کنم . از foreach هم استفاده کردم فقط id اخرین دسته انتخابی ثبت میشه .
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
    
 
		
		- 
		
			
						
						
							April 30th, 2016 16:02
						
					
					
						
							 # ADS
						
					
			
			
			
					
						
			
						
							
								
									
								
							
					
					
			
			
				
			
		 
		
	
- 
	
			
				
					April 30th, 2016, 16:15
				
			
			
				
					#2
				
				
				
			
	 
	
		
			
			
				عضو انجمن
			
			
			
			
			
			
				
			
			 
			
				
				
				
				
				
					    
				
			
		 
		
			
				
				
				
					
 پاسخ : ثبت یک آرایه در یک فیلد از جدول mysql
				
				
						
						
				
					
						
							اخرش رو متوجه نشدم foreach برا چیه
- - - Updated - - -
<?php
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
echo json_encode($arr);
?>
The above example will output:
{"a":1,"b":2,"c":3,"d":4,"e":5}
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
    
 
			
	
- 
	
			
				
					April 30th, 2016, 16:16
				
			
			
				
					#3
				
				
				
			
	 
	
		
		
			
				
				
				
					
 پاسخ : ثبت یک آرایه در یک فیلد از جدول mysql
				
				
						
						
				
					
						
							
	کد PHP:
	
$category_id=$_POST['category_id'];
foreach($category_id as $cat){
                
            }
            if($a==1 && $b==1 && $c==1 && $d==1 && $e==1 && !empty($time) && !empty($date) && !empty($level)){
                $record=$connect->prepare("INSERT INTO `db_post` (`title`,`text`,`description`,`keywords`,`time`,`date`,`author_id`,`category_id`) VALUES (?,?,?,?,?,?,?,?)");
                $record->bindValue(1,$post['title']);
                $record->bindValue(2,$post['text']);
                $record->bindValue(3,$post['description']);
                $record->bindValue(4,$post['keywords']);
                $record->bindValue(5,$time);
                $record->bindValue(6,$date);
                $record->bindValue(7,$level);
                $record->bindValue(8,$cat);
                if($record->execute()){
                    $success='پست شما با موفقیت در وبسایت ثبت شده است .';
                }
                else{
                    header('location: post.php');
                    die;
                }
            } 
 
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
    
 
			
	
- 
	
			
				
					April 30th, 2016, 16:16
				
			
			
				
					#4
				
				
				
			
	 
	
		
			
			
				عضو انجمن
			
			
			
			
			
			
				
			
			 
			
				
				
				
				
				
					    
				
			
		 
		
			
				
				
				
					
 پاسخ : ثبت یک آرایه در یک فیلد از جدول mysql
				
				
						
						
				
					
						
							ارایه رو json کنین اونو تو دیتابیس ذخیره کنین !  وقتیم از دیتابیس درمیارید json_decode استفاده کنین
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
    
    
    
    
    
        
            تعداد تشکر ها از miladtnt به دلیل پست مفید 
        
    
    
         
     
 
			
	
- 
	
			
				
					April 30th, 2016, 16:16
				
			
			
				
					#5
				
				
				
			
	 
	
		
			
			
				عضو دائم
			
			
			
			
			
			
				
			
			 
			
				
				
				
				
				
			
		 
		
			
				
				
				
					
 پاسخ : ثبت یک آرایه در یک فیلد از جدول mysql
				
				
						
						
				
					
						
							کدی که نوشتید قرار دهید، به جای آرایه برای دسته بندی، implode کنید با کارکتر , ،حجم کمتری در دیتابیس میگیرد.
						
					 
					
				 
			 
			
			
			
			
		 
	 
		
	
 
- 
    
    
    
    
    
        
            تعداد تشکر ها ازT.Toosi به دلیل پست مفید
        
    
    
         
     
 
			
	
- 
	
			
				
					April 30th, 2016, 16:24
				
			
			
				
					#6
				
				
				
			
	 
	
		
			
			
				عضو انجمن
			
			
			
			
			
			
				
			
			 
			
				
				
				
				
				
					    
				
			
		 
		
			
				
				
				
					
 پاسخ : ثبت یک آرایه در یک فیلد از جدول mysql
				
				
						
						
				
					
						
							
	
		
			
			
				
					
 نوشته اصلی توسط 
<?php?>
					
				 
				
	کد PHP:
	
$category_id=$_POST['category_id'];
foreach($category_id as $cat){
                
            }
            if($a==1 && $b==1 && $c==1 && $d==1 && $e==1 && !empty($time) && !empty($date) && !empty($level)){
                $record=$connect->prepare("INSERT INTO `db_post` (`title`,`text`,`description`,`keywords`,`time`,`date`,`author_id`,`category_id`) VALUES (?,?,?,?,?,?,?,?)");
                $record->bindValue(1,$post['title']);
                $record->bindValue(2,$post['text']);
                $record->bindValue(3,$post['description']);
                $record->bindValue(4,$post['keywords']);
                $record->bindValue(5,$time);
                $record->bindValue(6,$date);
                $record->bindValue(7,$level);
                $record->bindValue(8,$cat);
                if($record->execute()){
                    $success='پست شما با موفقیت در وبسایت ثبت شده است .';
                }
                else{
                    header('location: post.php');
                    die;
                }
            } 
  
			
		 
	 
 
این روش درستی نیست همه دسته هاتون که تو ارایه هستن رو اینجور ذخیره کنین
- - - Updated - - -
دوست عزیز نمیدونم تو کلاس های هسته جلوش گرفته شده یا نه ولی این روش کدنویسیتون sql injection داره ها
						
					 
					
				 
			 
			
			
				
				
				
					
						ویرایش توسط miladtnt : April 30th, 2016 در ساعت 16:19
					
					
				
				
				
				
				
				
				
			 
			
			
		 
	 
		
	
 
- 
    
    
    
    
    
        
            تعداد تشکر ها از miladtnt به دلیل پست مفید 
        
    
    
         
     
 
			
	
- 
	
			
				
					April 30th, 2016, 16:40
				
			
			
				
					#7
				
				
				
			
	 
	
		
		
			
				
				
				
					
 پاسخ : ثبت یک آرایه در یک فیلد از جدول mysql
				
				
						
						
				
					
						
							از sql injection با یک تابع هنگام ورودی جلوگیری شده . بخشی از کد رو اینجا گذاشتم .
این تمام کد صفحه ایجاد مطلب هست :
http://paste.ofcode.org/scghhzeiycWX6b3AwDD4qd
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
    
    
    
    
    
        
            تعداد تشکر ها از <?php?> به دلیل پست مفید 
        
    
    
         
     
 
			
	
- 
	
			
				
					April 30th, 2016, 17:44
				
			
			
				
					#8
				
				
				
			
	 
	
		
		
			
				
				
				
					
 پاسخ : ثبت یک آرایه در یک فیلد از جدول mysql
				
				
						
						
							
						
				
					
						
							حل شد از همه دوستان ممنونم
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
-