Nome Film----Anno Uscita----Regista Film----Attore Film
Film1--------2005-------------Regista 1------Attore 1
Film2--------2004-------------Regista 2------Attore 2
Film3--------2005-------------Regista 3------Attore 3

In una tabella ho i dati di cui sopra. Dopo aver fatto la query sul db, scrivo

while($row=mysql_fetch_array($result){
extract($row)
}

mysql_fecth_array($result) trasforma la riga di risulati in un array di nome $row. In pratica è come se avessi:
$row=array(NomeFilm=>'Film1',Anno Uscita=>2005,Regista Film=>'Regista 1' Attore Film=>'Attore 1');

Questo ovviamente si ripete per tutte e tre le righe della tabella.

extract($row); serve per creare variabili con lo stesso nome dei campi e popolarle con i valori del reord corrente. In pratica:

$nomeFilm="Film 1";
$AnnoUscita=2005;
$Regista Film='Regista1';
$Attore Film='Attore 1';

Il ciclo while prosegue fino a quanto $row diventa false.

E' giusta la cosa?