mysql_fetch_field

(PHP 3, PHP 4, PHP 5)

mysql_fetch_field --  Ottiene informazioni sulla colonna da un risultato e le restituisce come oggetto

Descrizione

object mysql_fetch_field ( resource risultato [, int indice_campo] )

Restituisce un oggetto contenente le informazioni di un campo.

mysql_fetch_field() può essere usata al fine di ottenere informazioni circa i campi di un determinato risultato di una query. Se l'indice del campo non è specificato, il successivo campo non ancora recuperato da mysql_fetch_field() viene considerato.

Le proprietà dell'oggetto sono:

  • name - nome della colonna

  • table - nome della tabella a cui appartiene la colonna

  • max_length - massima lunghezza della colonna

  • not_null - 1 se la colonna non può essere NULL

  • primary_key - 1 se la colonna è una chiave primaria

  • unique_key - 1 se la colonna è una chiave unica

  • multiple_key - 1 se la colonna è una chiave non-unica

  • numeric - 1 se la colonna è numerica

  • blob - 1 se la colonna è un BLOB

  • type - il tipo della colonna

  • unsigned - 1 se la colonna è senza segno

  • zerofill - 1 se la colonna è completata da zeri

Esempio 1. mysql_fetch_field()

<?php
mysql_connect
('localhost:3306'$utente$password)
    or die(
"Connessione non riuscita: " mysql_error());
mysql_select_db("database");
$risultato mysql_query("select * from tabella")
    or die(
"Query fallita: " mysql_error());
/* ottiene i metadata della colonna */
$i 0;
while (
$i mysql_num_fields($risultato)) {
    echo 
"Informazioni della colonna $i:<br />\n";
    
$meta mysql_fetch_field($risultato);
    if (!
$meta) {
        echo 
"Nessuna informazione disponibile<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($risultato);
?>

Vedere anche mysql_field_seek().