1

ラジオ ボタンのようなすべてのデータベース フィールドを表示しようとしています。たとえば、次のデータベース フィールドがあります。

hostess_id
hostess_name_en
hostess_surname_en
... etc ...

それらをラジオボタンとして表示して選択し、選択したボタンのデータ情報のみを表示したい。

どうやってやるの?私はこのようなものを持っています:

<?php
$link = mysql_connect('localhost', 'root', '');
if (!$link) {
    die('Could not connect to MySQL server: ' . mysql_error());
}
$dbname = 'db_up';
$db_selected = mysql_select_db($dbname, $link);
if (!$db_selected) {
    die("Could not set $dbname: " . mysql_error());
}
$res = mysql_query('select * from hostess', $link);

while ($row = mysql_fetch_assoc($result)){

  echo "<td><input type=\'checkbox\' name=\'hostess[]\' value=\'" . $row['hostess_id'] . "\'>" . $row['hostess_firstname_en'] . "<br />";

}


?>
4

2 に答える 2

0

チェックボックスは一意nameであるか、配列である必要があります。チェックボックス配列は、実行していることに適しています。

while ($row = mysql_fetch_assoc($result)){

  echo "<input type='checkbox' name='hostess[]' value='" . $row['id'] . "' />" . htmlentities($row['hostess_surname_en']) . "<br />";

}

これにより、チェックボックスのリストが表示され、それぞれの横にホステスの名前が表示されます。これで、このフォームがPHPスクリプトに送信されると、次のコマンドで選択した行にアクセスできるようになりますid

$selectedIds = $_POST['hostess']; // an array

$selectedIdsチェックされたレコードidの配列です。

mysql_*ライブラリは非推奨であるため、新しいコードにはPDOまたはMySQLiを使用することをお勧めします。

于 2012-06-18T11:09:37.923 に答える
0

PDOでは、すべてのフィールドを取得します

$q = $dbh->prepare("DESCRIBE tablename");
$q->execute();
$table_fields = $q->fetchAll(PDO::FETCH_COLUMN);

非推奨の mysql_* を使用

function mysql_field_array( $query ) {
    $field = mysql_num_fields( $query );
    for ( $i = 0; $i < $field; $i++ ) {
        $names[] = mysql_field_name( $query, $i );
    }
    return $names;
}
// Example of use
$fields = mysql_field_array( $query );

そのフィールド名の配列をループして、チェックボックスで名前を使用することができます。

于 2012-06-18T11:05:24.510 に答える