2016-06-08 3 views
0

내가 PHP 배열 오늘 끝없는 게시물을 읽고 있고, 다차원 배열 ... 나는 다음과 같은 열이 구성 다중 차원 배열 도전

내가 행이 MySQL의 테이블이 :) 혼란 조금 해요 : 이름, 이메일, choice1, 선택 2, choice3, choice4, choice5, choice6, choice7, choice8, choice9, choice10

다음과 같이 내가 배열을 채우는 해요 :

while($row = mysql_fetch_assoc($result)){ 
$allResults[$index] = $row; 
$index++; 
} 

은 내가 액세스 할 수 있습니다 알고 $ allResults [0] [name]에 의한 데이터; 그게 다 괜찮아.

그러나 여기 내가하려는 일이 있습니다. 행의

한 데이터의 조각이 포함됩니다 : IPO3_1는,

내가 배열의 모든 행을 순환해야합니다 (이것은 선택의 열 중 하나에있을 것입니다)이 데이터를 찾은 다음 당겨을 밖으로 이름 열. 여기 내 궁극적 인 목표의 매우 거친 코드는 내가 어떤 행의 값 "IPO3_1"를 발견 할 때 기본적으로

<TR> 
<?php 
if (in_array("IPO3_1", $allResults[0])||in_array("IPO3_1", $allResults[1])) { 
?> 
<TD WIDTH="30" ALIGN="CENTER"><input type="checkbox" name="sp1" value="IPO3_1" DISABLED></TD> 
<?php 
} else { 
?> 
<TD WIDTH="30" ALIGN="CENTER"><input type="checkbox" name="sp1" value="IPO3_1" ></TD> 
<?php 
} 
?> 
<TD WIDTH="210" ALIGN="LEFT">&nbsp;&nbsp;IPO3 - 1st</TD> 
<TD WIDTH="40" ALIGN="CENTER">$120</TD> 
<TD WIDTH="270" ALIGN="CENTER"><?php echo $allResults[0][name]; ?></TD>  
</TR> 

(I이 주위에 내 머리를 얻을 수 없기 때문에 불완전하지만) 나는 또한 체크 박스를 해제하고 필요 테이블에 이름을 추가하십시오.

mySql 테이블 최대 값은 34 행까지입니다. "IPO3_1"과 유사하지만 모두 고유 한 텍스트 문자열입니다.

나를 올바른 방향으로 인도하기위한 어떤 생각이라도 있습니까?

+0

"IPO3_1"같은 값이 배열에 있습니까? – splash58

+0

예, $ allResults 배열 – Vacek

+0

아니요, 확인 하시겠습니까? – splash58

답변

0

나는 undestood로 작업을 작성했습니다. 하지만 내 최고의되지 않습니다 shure 아니에요 :)

// $row will be false if string will be not found anywhere 
// else it will be index of row, in wwhich first occurence found 
$row = false; 

foreach($allResults as $key=>$value) { 
    // remove non-'choice' fields 
    unset($value['name']); 
    unset($value['email']); 
    // Lookup the string in other field 
    if(in_array('IPO3_1', $value, true)) 
     // if found break the loop 
     { $row = $key; break; } 
} 
+0

이 코드는 질문에 대답 할 수 있지만 이유 및/또는이 코드가 질문에 어떻게 대답하는지에 대한 추가 컨텍스트를 제공하면 장기적인 가치가 향상됩니다. –

+0

@JayBlanchard 나는 정말로 내가 거기에 추가 할 수있는 것을 이해하지 못한다. – splash58

+0

코드를 설명한다. *** 좋은 대답 ***은 무엇을했는지에 대한 설명과 왜 그런 방식으로했는지에 대한 설명을 OP에서뿐만 아니라 미래의 방문객에게도 제공합니다. –

관련 문제