Errore in query mysql su ricerca record

megarospo

Utente Attivo
25 Set 2007
147
0
0
Ciao a tutti. Ho una pagina che svolge una ricerca in più tabelle di database e poi unisce i risultati. Se però in un recor sono stati precedentemente inseriti dei dati solo sul campo "fi" e nulla sugli altri, questo record non viene visualizzato. Da cosa può dipendere? Vi scrivo di seguito il codice. Secondo voi dipende da questo o devo cercare altrove?
Grazie mille.


Questo è il codice:
....
mysql_select_db($database, $fi);
$query_ricerca = sprintf("SELECT fi.uno, fi.formato, fi.descrizione, fi.altrofi, user.nick, user.provincia, user.comune, user.email, user.cell, user.altrouser FROM fi INNER JOIN user ON fi.id_user=user.id WHERE fi.uno LIKE '%%%s%%' AND fi.formato LIKE '%%%s%%' AND fi.descrizione LIKE '%%%s%%' AND user.comune LIKE '%%%s%%' AND user.provincia LIKE '%%%s%%'", $varuno_ricerca,$varformato_ricerca,$vardescrizione_ricerca,$varcomune_ricerca,$varprovincia_ricerca);
$query_limit_ricerca = sprintf("%s LIMIT %d, %d", $query_ricerca, $startRow_ricerca, $maxRows_ricerca);
$ricerca = mysql_query($query_limit_ricerca, $fi) or die(mysql_error());
$row_ricerca = mysql_fetch_assoc($ricerca);
... ecc
 
Forse il solo campo che viene valorizzato non è sufficiente a creare la JOIN tra le tabelle, quindi la JOIN stessa non trova un match e semplicemente non ti stampa nulla.

Si tratta quindi di un errore logico, non di un errore del serve o dello script, giusto?
 
Ciao.
Scusa se insisto ma come posso fare a risolvere il problema se c'è solo un campo obbligatorio? cosa mi consigliate?
 

Discussioni simili