downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

mysql_num_rows> <mysql_list_tables
[edit] Last updated: Sat, 07 Jan 2012

view this page in

mysql_num_fields

(PHP 4, PHP 5)

mysql_num_fields결과로부터 필드의 개수를 반환

설명

int mysql_num_fields ( resource $result )

질의로부터 필드의 개수를 반환한다.

인수

result

mysql_query() 호출을 통한 결과 resource.

반환값

성공하면 resource 결과 셋으로부터 필드의 개수를 반환하고, 실패하면 FALSE를 반환한다.

예제

Example #1 mysql_num_fields() 예제

<?php
$result 
mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!
$result) {
    echo 
'Could not run query: ' mysql_error();
    exit;
}

/* returns 2 because id,email === two fields */
echo mysql_num_fields($result);
?>

주의

Note:

하위 호환을 위하여, 다음의 권장하지 않는 별칭을 사용할 수 있습니다: mysql_numfields()

참고



mysql_num_rows> <mysql_list_tables
[edit] Last updated: Sat, 07 Jan 2012
 
add a note add a note User Contributed Notes mysql_num_fields
php at jezusisheer dot nl 29-Mar-2007 11:10
Note that, if you want to get the amount of columns of a table and you're using the "SHOW COLUMNS FROM $table" query, you will have to use mysql_num_rows() instead of mysql_num_fields() on the result. This becomes logical when thinking about it, because the SHOW COLUMNS query returns a result with six columns (Field, Type, Null, Key, Default and Extra) and with a single row for every column found. If you'd count the number of fields, you'd always get 6. If you count the number of rows, you'll get the amount of columns found.
tharkey at tharkey dot net 19-Jun-2003 11:26
You can use it without a requete, just to list the fields :

$liste_champs = mysql_list_fields ( $Base, $Table, $connexion);

for ($i=0; $i < mysql_num_fields ($l_champs); $i++) {
                        echo ( mysql_field_name ($l_champs, $i) );
                        echo (' / ');
                        }
apass AT passmoore DOT com 01-Oct-2002 03:52
Adding to the last comment: you can dynamically loop through any number of  columns AND rows like so-

$query="your SQL";
$result=mysql_query($query) or die("Query ($query) sucks!");
$fields=mysql_num_fields($result);

echo "<table>\n<tr>";
for ($i=0; $i < mysql_num_fields($result); $i++) //Table Header
{ print "<th>".mysql_field_name($result, $i)."</th>"; }
echo "</tr>\n";
while ($row = mysql_fetch_row($result)) { //Table body
echo "<tr>";
    for ($f=0; $f < $fields; $f++) {
    echo "<td>$row[$f]</td>"; }
echo "</tr>\n";}
echo "</table><p>";

This has been tested.
matt at iwdt dot net 23-Sep-2001 06:09
here's one way to print out a row of <th> tags from a table
NOTE: i didn't test this

$result = mysql_query("select * from table");

for ($i = 0; $i < mysql_num_fields($result); $i++) {
    print "<th>".mysql_field_name($result, $i)."</th>\n";
}

post a comment if there's an error
bwark at stanford dot edu 24-Dec-2000 02:56
If you just want the number of fields in a table, you can do something like this:

<?php
$db_id
= mysql_connet();
$result = mysql_query("DESCRIBE [tableName], $db_id);

$numFields = mysql_num_rows($result);
?>

Because "
DESCRIBE" returns one row for each field in the table (at least in MySQL), this will work.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites