2014-04-22 4 views
2

약간의 도움주세요. 나는이있다 : 그 선택하고 어떤 값이 것은이 경우 항목의 제목 인 경우 사용자가 하나 개 이상의 항목을 선택할 수 있습니다 enter image description hereAjax, 체크 박스 및 PHP

, 내가 수집해야합니다.

나는 또한 현재이 아약스가

:

$('.box').on('change', function(event) { 


     var valueName = $('#box').val(); 



      var checked = $('input[name=checked]:checked'); 
      if(checked.length > 0) { 
        var checkValues = checked.map(function(){ 
         return $(this).val(); 
        }).get();       
        $.ajax({ 
          url: 'accessories_post.php', 
          type: 'post', 
          data: { checked: checkValues }, 
          success:function(data){ console.log(data); } 
        }); 
       } 

게시물

print_r($_POST['checked']); 

있다 그러나 어떤 accessories_post.php하기를 나는이 데이터를 잡아 내가 필요 변수에 넣고 싶을 때 메일을 통해 어떤 아이디어가 필요한지 모르겠다. 대신 .map 기능의

+0

It prob 배열. 그것을 반복해야합니다. –

+0

foreach ($ _POST [ 'checked']를 $ checked로 선택) $ 체크 endforeach ?? –

+0

내부에있는'$ checked' 변수로 아무 것도하지 않습니다.? –

답변

2

, 당신은 간단하게 수행 할 수 있습니다

checkValues = ''; 
$('input[name="checked"]:checked').each(function(){ 
    checkValues+=$(this).val()+","; 
}); 
//this is to remove the extra comma , at the end of the string 
checkValues = checkValues.substring(0,(checkValues.length-1)); 

나는, 그래서 $_POST['checked']

그리고 관련 TITLE2, 제목과 같은 값을 반환합니다 체크 박스 값을 연결된 한 당신이 물어 본 id 값의 증가분을 다음과 같이 할 수 있습니다 :

$i=0; 
//your loop statement starts 
echo "<input type='checkbox' id='box{$i}' name='checked'>"; 
$i++; 
//loop ends 
+0

감사합니다. 시도해주세요. –

+0

그래서 선택한 부분에 대한 mail() 함수에서 $ _POST [ 'checked']라고 말하면됩니다; ?? –

+0

@ the_unforgiven_II 예. 그러나 모든 체크 박스를 변경하는 대신 버튼 클릭만으로 AJAX를 실행하는 것을 고려하십시오. –