ho un array multidimensionale che fa le bizze...
ce lo avevo su un sito ed era una bomba, ho cercato di "duplicarlo", ma niente... non riesco a capire come farlo funzionare, ed è da stamattina che faccio prove ma niente.. 
In realtà non mi da errore, solo che il secondo ciclo foreach mi restituisce SOLO il primo record..

posto il codice... 
ah.. siccome lo uso come motore di ricerca (ovvio data la query..
) ho omesso le parti in cui divido la variabile $cerca se l'utente cerca più di una parola... quella parte comunque funziona.. 
Codice PHP:
<?php function safe_query($s_query,$s_db,$s_db_name){
mysql_select_db($s_db_name, $s_db) or die ("Errore nella selezione del db: ".mysql_error($s_db));
$s_result = mysql_query($s_query,$s_db)
or die("E' stato riscontrato un errore in una query al database.
ErrorNo: \"".mysql_errno($s_db)."\"
Errore: [b]\"".mysql_error($s_db)."\"[/b]");
return $s_result;
}
// NON PROVARE A CAPIRE IL DETTAGLIO DI QUESTA FUNZIONE
// ACCONTENTATI DI CAPIRE CHE:
// restituisce un array associativo multidimensionale con due chiavi: $key_entry_1, $key_entry_2
// OVVERO... guarda l'esempio qui sotto ;)
function set_array_from_query_with_two_keys($query,$key_entry_1,$key_entry_2,$s_db,$s_db_name)
{
mysql_select_db($s_db_name, $s_db) or die ("Errore nella selezione del db: ".mysql_error($s_db));
$returned_array = array();
$result_query = mysql_query($query, $s_db);
if (!$result_query)
die('Invalid query: ' . mysql_error($s_db));
$tot_records = mysql_num_rows($result_query);
$totale = $tot_records;
if($totale == 0 )
{
echo "<table align='center' >";
echo "<tr><td align='center' >Hai cercato <span class='grande'>[b]".$_GET['cerca']."[/b]</span> </td><td> </td></tr>";
echo "<tr><td align='center' class='grande' >Non Hai trovato nessuna rispondenza
[url='index.php']Torna alla ricerca[/url]</td><td> </td></tr>";
echo "</table>";
} else {
echo "<table align='center' >";
echo "<tr><td align='center' >Hai cercato [b]".$_GET['cerca']."[/b] </td><td> </td></tr>";
echo "<tr><td align='center' >Hai trovato ".$totale." risultati</td><td> </td></tr>";
echo "<tr><td align='center' >Clicca sulle categorie per omettere o visualizzare i risultati</td><td> </td></tr>";
echo "</table>";
}
if (mysql_num_rows($result_query) > 0)
{
// iterate through resultset,
// foreach knows key_entry beforehand!!!
while($row = mysql_fetch_row($result_query))
{
foreach($row as $field => $value)
{
$column = mysql_field_name($result_query,$field);
$data["$column"] = $value;
if(mysql_field_name($result_query,$field)==$key_entry_1) $x=$value;
if(mysql_field_name($result_query,$field)==$key_entry_2) $y=$value;
}
$returned_array[$x][$y] = $data;
}
}
return $returned_array;
}
$query = "SELECT * FROM tabella WHERE MATCH(campouno, campodue) AGAINST ('$cerca' IN BOOLEAN MODE) ORDER BY id ASC";
$array_provaimport = set_array_from_query_with_two_keys($query,'campouno','campodue',$db_conn,$db);
?>
<?
$i = 1;
foreach ( $array_provaimport as $campouno => $value )
{
$i++;
foreach($value as $campodue => $inutilizzato)
{
echo "<tr><td width='50' valign='top'>$inutilizzato[codice]</td><td align='left' valign='top' width='425'>$campodue</td>";
}
}
?>
grazie in anticipo...