2016-10-12 3 views
-2

Я пытаюсь получить имена столбцов из mysql databse. Я могу получить имя столбца, как это:Как получить имя столбца из определенной таблицы Mysql в массиве

Array ([id] => id [BSPKey] => BSPKey [PrintPost] => PrintPost [Barcode] => Barcode [FirstName] => FirstName [LastName] => LastName [Add1] => Add1 [Add2] => Add2 [Suburb] => Suburb [State] => State [Zip] => Zip [Team] => Team [Dteam] => Dteam [Fteam] => Fteam [DPID] => DPID [Error] => Error [Address1] => Address1 [Address2] => Address2 [correct3] => correct3 [correct4] => correct4 [correct5] => correct5 [fcorrect] => fcorrect [bspprint] => bspprint) 

, чтобы получить это я использую этот скрипт

$qColumnNames = mysqli_query($conn,"SHOW COLUMNS FROM newdata"); 
$numColumns = mysqli_num_rows($qColumnNames); 
$x = 0; 
while ($x < $numColumns) 
{ 
    $colname = mysqli_fetch_row($qColumnNames); 
    $col[$colname[0]] = $colname[0]; 
    $x++; 
} 

print_r($col); 

Но я хочу только имя столбца и хочу, чтобы заполнить HTML <select> элемента, как это

<select name="column_name[]" multiple="multiple"> 
<option selected="selected" value="id">id</option> 
<option selected="selected" value="BSPKey">BSPKey</option> 
<option selected="selected" value="PrintPost">PrintPost</option> 
<option selected="selected" value="Barcode">Barcode</option> 
<option selected="selected" value="FirstName">FirstName</option> 
<option selected="selected" value="LastName">LastName</option> 
<option selected="selected" value="Add1">Add1</option> 
<option selected="selected" value="Add2">Add2</option> 
<option selected="selected" value="Suburb">Suburb</option> 
<option selected="selected" value="State">State</option> 
<option selected="selected" value="Zip">Zip</option> 
<option selected="selected" value="Team">Team</option> 
<option selected="selected" value="Dteam">Dteam</option> 
<option selected="selected" value="Fteam">Fteam</option> 
<option selected="selected" value="DPID">DPID</option> 
<option selected="selected" value="Error">Error</option> 
<option selected="selected" value="Address1">Address1</option> 
<option selected="selected" value="Address2">Address2</option> 
<option selected="selected" value="correct3">correct3</option> 
<option selected="selected" value="correct4">correct4</option> 
<option selected="selected" value="correct5">correct5</option> 
<option selected="selected" value="fcorrect">fcorrect</option> 
<option selected="selected" value="bspprint">bspprint</option> 
</select> 

Надеюсь, что у кого-то есть легкое решение.

+1

У вас действительно пробовал? Где вы заблокированы? – markusthoemmes

ответ

1

Вам просто нужно перебрать массив, который у вас есть в конце ($col). Просто используйте foreach на этом массиве и заполнения HTML, как это,

<select name="column_name[]" multiple="multiple"> 
<?php 
foreach($col as $key=>$val) { 
    ?> 
     <option selected="selected" value="<?php echo $key; ?>"><?php echo $val; ?></option> 
    <?php 
} 
?> 
</select> 

Результат вышеуказанного кода будет такой же, как вам нужно. Он просто отображает <option> для каждого элемента массива, используя его key и value.

+0

Спасибо, он просто сделал работу –

+1

Отлично, пожалуйста, примите это как правильный ответ, если это вам поможет. –

Смежные вопросы