Grazie dei consigli, ma purtroppo avevo già controllato e quindi sono sempre lì, provo a ripostare il codice, magari qualcuno avrà voglia di aiutarmi.

Il tutto lo sto provando in locale con una lamp, tutte le altre query del sito funzionano, questa è l'unica che non restituisce nè valori nè errori ( mysql_error() )

Vorrei visualizzare la carta di un utente, con foto e nome, uso 3 funzioni.

Funzione Carta, visualizza un div con dentro la foto dell'utente e sotto il nome
Codice PHP:
function Card($profile, $count){
  <div id="<?php echo"$profile[id]?>" class="card grid_2">
    <a href="#">
      <?php
        ViewPhoto
$link$profile['email'], '1''tmb');
        echo
"$profile[nome]";
      
?>
    </a>
  </div>
        
  <?php if( $count%== ){ ?><div class="clear"></div><?php }

 }
Funzione Visualizza Foto, richiama una funzione che fa una query al database per conoscere l'indirizzo URL della foto e se presente, visualizza la foto richiesta, altrimenti mostrerà un'immagine che ci dice che l'utente non ha foto

Codice PHP:
function ViewPhoto($link, $email, $princ, $grand){
    $query_photo=GetPhoto($link, $email, $princ);
    if( $foto = mysql_fetch_array($query_photo) ){
        ?>[img]../user-img/<?php echo[/img]" /><?php
    }else{
        ?>[img]../user-img/no-photo.jpg[/img]<?php
    }
}

Funzione prendi indirizzo della foto, fa una richiesta al database in base ai parametri di input che sono: la connessione a MySQL, l'indirizzo e-mail dell'utente e la selezione o meno della foto "da vetrina" dell'utente
Codice PHP:
function GetPhoto($link$email$princ){
    if( 
$princ == ){
        
$query = @mysql_query("SELECT * FROM foto WHERE email='$email' AND principale='1'"$link);
    }else{
        
$query = @mysql_query("SELECT * FROM foto WHERE email='$email' ORDER BY ordine ASC"$link);
    }
    
mysql_close();
    if(
$query)
        return 
$query;

Va tutto bene, è solo la query di quest'ultima funzione che ha problemi, non restituisce nessun valore e se provo con:
Codice PHP:
$query = @mysql_query("SELECT * FROM foto WHERE email='$email' ORDER BY ordine ASC"$link) or die( mysql_error() ); 
Mi visualizza un bel div vuoto, senza foto, senza errori...