2010-12-09 10 views
0

나는 다음과 같은 형태로 게시물을 만드는 오전 :PHP에서 복잡한 배열에서 데이터를 가져 오는 방법은?

while ($tracks = mysql_fetch_array($trackstring)){ 
    $tracks = mysql_fetch_array($trackstring)){ 
echo "<li class="tracklist"> 
<input type="text" name="tracknum-[$tracks['song_id']]" 
value="".$tracks['song_tracknumber']"/> 
<input type="text" name="trackname[$tracks['song_id']]" 
value="".$tracks['song_title'].""/> 
</li>"; 
    } 

은 다음과 같습니다 달러 (A $)의 _POST 배열 만드는 것 :

Array ([tracknum] => Array ([13] => 1 [14] => 2 [15] => 3) [trackname] => Array ([13] => One Beat [14] => Faraway [15] => Oh!) 

은 본질적으로 내가
1 원하는

- 하나의 비트가 ID로 이동을 = 13 2 - Faraway to into id = 14

나는 모든 데이터를 볼 수 있지만 조작 방법을 잘 모르겠다. 배열이 너무 뜨겁지 않다. 어떻게 ID를 포함하는 [ '????'] $ _POST 이러한 참조 "하나 개의 비트를"얻을

+0

당신은 이해하기 더 쉽게 만들 수 있습니까? –

답변

0

큰 감사

$tracknum = $_POST['tracknum']; 
$trackname = $_POST['trackname']; 
if(count($tracknum) == count($trackname)){ // make sure both the array have same elements 
    foreach($tracknum as $songid=>$tracknumber){ 
     $song_tracknumber = $tracknum[$songid]; 
     $song_title = $trackname[$songid]; 
     $sql = "UPDATE songs SET song_tracknumber='$song_tracknumber', song_title='$song_title' WHERE song_id=$songid"; 
    } 
} 
3

사용

$_POST['trackname'][13] 

값 않습니다. 당신은 쉽게 탐색 할 수 있도록

0

봅니다, 당신에게 당신의 POST 명확 들여 쓰기를 줄 것이다

print_r($_POST);

를 사용합니다.

그리고 도움이 필요하면 질문을보다 명확하게 편집하십시오. sitepoint 포럼 :에서 두개골 - 구멍에

관련 문제