1

私はこれが非常に単純であることを知っていますが、私はしばらくPHP / MySQLを使用しておらず、他のスレッド/ php Webサイトを読んでいて、それを取得できないようです。

MySQLテーブルから単一の行をクエリして、データを含むすべてのフィールドを出力するにはどうすればよいですか?NULLフィールドを除外し、データを持つフィールドのみをhtmlリストに追加する必要があります。

明確にするために、フィールドがたくさんあり、どのフィールドがNULLになるかわからないという理由だけで、フィールド名を指定せずにフィールドデータを表示したいと思います。

4

4 に答える 4

2

ちょうどSELECT * FROM table_name WHERE....トリックを行います。

特定のフィールドからデータを取得するには、次のようになりSELECT field_1,field_2,field_3ます。

于 2012-10-14T07:49:50.357 に答える
2

概説したことには、4 つの基本的な手順が必要です。

  1. データベースに接続します。
  2. 特定の行を照会します。
  3. 結果から null 値を削除します。
  4. html を作成します。

ステップ 1 はかなり環境固有であるため、ここではスキップしても問題ありません。


ステップ 2 - SQL

SELECT * from <tablename> WHERE <condition isolating single row>


ステップ 3 - PHP ($query が実行された db クエリを表すと仮定)

//convert the result to an array
$result_array = mysql_fetch_array($query);

//remove null values from the result array
$result_array = array_filter($result_array, 'strlen');


ステップ 4 - PHP

foreach ($result_array as $key => $value)
{
    echo $value \n;
}
于 2012-10-14T08:02:07.903 に答える
0

mysql クエリを表す文字列を作成する必要があります。次に、php という名前の関数がありますmysql_query()。上記の文字列をパラメーターとしてこの関数を呼び出します。すべての結果が返されます。下記は用例です

于 2012-10-14T07:53:54.800 に答える
0

このようにする必要があります...

最初にSQLに接続します...参照

次に、クエリを作成して変数に割り当てます...

$query = mysqli_query($connect, "SELECT column_name1, column_name2 FROM tablename");

単一の行を取得する場合は、LIMIT 1

$query = mysqli_query($connect, "SELECT column_name1, column_name2 FROM tablename LIMIT 1");

すべての列をフェッチする場合は*、列名の代わりに使用し、特定の列データがある行をいくつか残したい場合は、blank次のようにすることができます

$query = mysqli_query($connect, "SELECT * FROM tablename WHERE column_name4 !=''");

次に、配列をフェッチして、このように配列をループします..

while($show_rows = mysqli_fetch_array($query)) {
   echo $show_rows['column_name1'];
   echo $show_rows['column_name2'];
}

while ループに列名を含めたくない場合は、次のようにします。

while($show_rows = mysqli_fetch_array($query)) {
   foreach( $show_rows as $key => $val )
   {
       echo $show_rows[$key];
   }
}
于 2012-10-14T07:55:27.147 に答える