2012-10-30 3 views
0

CSV 파일에서 HTML로 선택 메뉴를 만들 수 있습니까? 나는 이것에 대해 어떻게 생각하는지 모른다.CSV 파일 선택 요소 빌드

두 열과 여러 값을 가진 CSV가 있는데, PHP와 출력 HTML을 사용하여 CSV 파일을 반복 할 수있는 방법이 있습니까? 지금까지이 방법을 사용해 보았습니다.

$row = 1; 
    if (($handle = fopen($_SERVER['DOCUMENT_ROOT']."/service/regions.csv", "r")) !== FALSE) { 
     while (($data = fgetcsv($handle, 133, ",")) !== FALSE) { 
      $num = count($data); 
      $row++; 
      for ($c=0; $c < $num; $c++) { 
       echo "<option value='".$data[$c]."'>".$data[$c]."</option>"; 
      } 
     } 
     fclose($handle); 
    } 

그러나이

<option value="AB">Aberdeenshire</option> 

이 어디에서 잘못 가고,

내가 걸려 무엇
<select> 
    <option value='AB'>AB</option> 
    <option value='Aberdeenshire'>Aberdeenshire</option> 
    <option value='AG'>AG</option> 
    <option value='Angus'>Angus</option> 
    <option value='AM'>AM</option> 
    <option value='Armagh'>Armagh</option> 
</select> 

이 같은 출력을 얻을 수 있습니다, 다음과 같은 출력을주고있다?

+0

"AB", "애버딘", "AG"입니다 – Udders

답변

1

당신이 필요로하는 등 "Agath"

$handle = fopen(__DIR__ . "/service/regions.csv", "r"); 
echo "<select>"; 
if ($handle !== FALSE) { 
    $row = 0; 
    while (($data = fgetcsv($handle, 133, ",")) !== FALSE) { 
     printf('<option value="%s">%s</option>', $data[0], $data[1]); 
    } 
    fclose($handle); 
} 
echo "</select>"; 

출력

<select> 
    <option value="AB">Aberdeenshire</option> 
    <option value="AG">Angus</option> 
    <option value="AM">Armagh</option> 
</select> 
1

$data[$c][0]은 첫 번째 열을 반환하고, $data[$c][1]은 두 번째 열을 반환합니다. 따라서 $data[$c]을 올바른 열로 대체하십시오.