object mysql_fetch_field (resource result [, int field_offset]) 
Returns an object containing field information. 
mysql_fetch_field() can be used in order to obtain information about fields in a certain query result. If the field offset isn't specified, the next field that wasn't yet retrieved by mysql_fetch_field() is retrieved. 
The properties of the object are: 
name - column name 
table - name of the table the column belongs to 
max_length - maximum length of the column 
not_null - 1 if the column cannot be NULL 
primary_key - 1 if the column is a primary key 
unique_key - 1 if the column is a unique key 
multiple_key - 1 if the column is a non-unique key 
numeric - 1 if the column is numeric 
blob - 1 if the column is a BLOB 
type - the type of the column 
unsigned - 1 if the column is unsigned 
zerofill - 1 if the column is zero-filled 
Example 1. mysql_fetch_field() 
<?php 
mysql_connect ($host, $user, $password) 
 or die ("Could not connect"); 
$result = mysql_db_query ("database", "select * from table") 
 or die ("Query failed"); 
# get column metadata 
$i = 0; 
while ($i < mysql_num_fields ($result)) { 
 echo "Information for column $i:<BR>\n"; 
 $meta = mysql_fetch_field ($result); 
 if (!$meta) { 
   echo "No information available<BR>\n"; 
 } 
 echo "<PRE> 
blob:     $meta->blob 
max_length:  $meta->max_length 
multiple_key: $meta->multiple_key 
name:     $meta->name 
not_null:   $meta->not_null 
numeric:   $meta->numeric 
primary_key: $meta->primary_key 
table:    $meta->table 
type:     $meta->type 
unique_key:  $meta->unique_key 
unsigned:   $meta->unsigned 
zerofill:   $meta->zerofill 
</PRE>"; 
 $i++; 
} 
mysql_free_result ($result); 
?>