Salve.
Ho creato un blocco personalizzato che dovrebbe semplicemente stampare il nome, il cognome e l'immagine del profilo dell'utente.
Il codice php che ho scritto è il seguente:
<?php
global $user;
$profile = profile_load_profile($user);
print $user->profile_name ." ". $user->profile_surname;
$avatar = $user->picture;
?>
<img src="<?php echo $avatar; ?>" height="50" width="50"/>
Ora, il nome e il cognome vengono visualizzati perfettamente, invece l'immagine del profilo dà alcuni problemi:
viene visualizzata in alcune pagine sì ed in alcune no.
Spiego meglio: ho posizionato questo blocco in alto, in una zona che, ovviamente, è presente in tutte le pagine (ho creato appositamente una regione, poco sotto l'header). In alcune pagine viene visualizzato correttamente: NOME COGNOME [IMMAGINE],
mentre in altre (sempre le stesse, ad esempio quella del proprio profilo), l'immagine manca del tutto.
Non riesco a capire il perché.
Qualcuno sa aiutarmi? Grazie!
Credo che come da http://api.drupal.org/api/function/template_preprocess_user_picture/6 bisogna usare file_create_url per creare il valore del attributo src.
Non sarebbe meglio usare check_plain() per il nome, cognome?
Più imparo, più dubito.
Grazie mille!!!
Ho risolto, attuando il tuo consiglio, per quel che riguarda l'immagine!
Su check_plain() ammetto di non sapere proprio niente, essendo alle primissime armi in questo campo.
Non so come si usa, quindi tantomeno capisco perchè sia il caso di usarlo :)
Se potessi spiegarmelo in due righe ti sarei grato. Altrimenti non preoccuparti, mi posso informare tramite google. Thanks
Solo 2 righe? Ok. check_plain controlla ed elimina potenziali attachi al sito tipo XSS. Se io scrivesse "
<script src='http://www.malvagita.it/xss.js'></script>[/codefilter_code]" come nome, cosa potrebbe succedere?
Più imparo, più dubito.