2013-08-14 3 views
0

POST 배열을 통해 이전 양식의 정보를 전달합니다. 데이터베이스에서 정보를 가져 오려고 시도 할 때 레코드를 찾을 수 없습니다. 그러나 데이터 덤프는 "pre_fodder"에 대한 배열에 값이 있음을 보여줍니다. 배열 'item'이 비어 있습니다. 도움말 = (포스트를 통한 배열 전달 및 db에서 데이터 가져 오기

당신은 루프가없는

$i = 0; 
$a = count($_POST['pre_fodder']); 

while ($i < $a) { 
    print_r ($_POST[pre_fodder][$i]); 
    $_POST[pre_fodder][$i] += 0; 
    print_r ($_POST[pre_fodder][$i]); 

    $data = "SELECT * FROM items WHERE inventory_id='$_POST[pre_fodder][$i]'"; 
    $result = mysqli_query($data); 
    $item = mysqli_fetch_assoc($result);  

    print_r($item); 

    $i++; 

} 

답변

1

HTML

<div> 
    stuff here <br /> 
    <input type="checkbox" name="pre_fodder[]" value="<? item[item_id} ?>" /> 
</div> 
<div> 
    stuff here <br /> 
    <input type="checkbox" name="pre_fodder[]" value="<? item[item_id} ?>" /> 
</div> 
<div> 
    stuff here <br /> 
    <input type="checkbox" name="pre_fodder[]" value="<? item[item_id} ?>" /> 
</div> 

PHP, 당신은 IN

$sql = "SELECT * FROM items WHERE inventory_id IN ('" . implode("','", $_POST['pre_fodder']) ."')"; 
$rs = mysql_query($sql); 

while ($r = mysql_fetch_assoc($rs)) { 
    print_r($r); 
} 
를 사용하여 단일 쿼리에서 그것을 할 수 있습니다
관련 문제