このスクリプトには問題があるようです。$i の値を 2 などに変更すると、すべてのフィールドではなく A フィールドが出力されます。何が悪いのかわかりません。
さらに、このようなことは可能ですか?基本的に結果クエリにはもっと多くのフィールドがありますが、結果クエリにリストされているフィールドの値のみを出力して、ユーザーが編集できるようにしたい (resultInput に表示される)
<?php
require('dbc.php');
mysql_select_db($db);
$result = mysql_query("SELECT * FROM about WHERE id=1");
$resultInput = array('page_header', 'sub_header', 'content', 'content_short');
if (mysql_num_rows($result) > 0) {
//loop creates inputs
//make $resultInput object to array.
$i=0;
while ($row = mysql_fetch_assoc($result)) {
$meta = mysql_fetch_field($result, $i);
if(in_array($meta->name, $resultInput )){
echo '<div class="wrapper"><label>' . ucfirst(str_replace('_', ' ',$meta->name)) .
'<br><input name="' . $meta->name .
'" type="text" class="input" value="'.$row[$meta->name].'"><br></label></div>';
}
$i++;
}
}
?>