Pagina 1 di 1
problemino visualizzazione immagini php
Inviato: gio 29 lug 2010, 10:56
da Paoletta
ciao a tutti, ho del codice con cui estraggo degli oggetti da un database e li visualizzo;
se l'oggetto in questione e' un file testuale, il browser lo mostra senza problemi con il seguente codice:
Codice: Seleziona tutto
if (is_object($arr['PHOTO_FILE'])) {
$data = $arr['PHOTO_FILE']->load();
$arr['PHOTO_FILE']->free();
header('Content-Type:plain/text'');
echo $data;
}
ma se l'oggetto e' una immagine, lo stesso codice (con header impostato a 'Content-Type:image/jpeg') non va piu' e mi mostra solamente la url della pagina; da che cosa puo' dipendere secondo voi? Grazie
Re: problemino visualizzazione immagini php
Inviato: gio 29 lug 2010, 11:16
da conraid
echo è per le stringhe e $data sembra un riferimento più che un "blob" di un'immagine e quindi ti stampa quello, prova ad usare readfile o qualcosa come echo file_get_contents($image);
http://www.php.net/manual/en/function.readfile.php
http://www.php.net/manual/en/function.f ... ntents.php
http://www.thewebsqueeze.com/web-design ... g-php.html
Re: problemino visualizzazione immagini php
Inviato: gio 29 lug 2010, 11:29
da Paoletta
il problema e' che $data e' l'oggetto: se provo a non mettere lo header la stampa che ottengo e' una enorme sequenza di caratteri strani...ma se lo aggiungo vedo solo il riferimento alla pagina...inoltre se metto il campo del file di testo al posto di quello dell'immagine il tutto funziona normalmente
Re: problemino visualizzazione immagini php
Inviato: gio 29 lug 2010, 13:13
da SIV
E se dopo aver estratto il dato dal database mettessi un controllo?
Del tipo:
se (l'oggetto è di testo) {header('Content-Type:plain/text''); echo $data;}
altrimenti se (l'oggetto è un'immagine) {header('Content-type: image/png'); imagepng($data);}
?
Re: problemino visualizzazione immagini php
Inviato: gio 29 lug 2010, 16:48
da Paoletta
non e' un problema di controllo...estraggo separatamente immmagini e files di testo; comunque ho scoperto che il server (Tomcat) non gestisce bene nemmeno le immagini presenti sul filesystem...infatti non le fa visualizzare correttamente; dove devo andare a investigare secondo voi?
Re: problemino visualizzazione immagini php
Inviato: dom 1 ago 2010, 0:48
da ilmich
Ciao,
se l'immagine recuperata la salvi (consideralo un test) su un file si vede correttamente?!?!
Forse e' sbagliato il modo con cui la memorizzi sul database e quindi di conseguenza il browser non la visualizza correttamente.
Re: problemino visualizzazione immagini php
Inviato: lun 2 ago 2010, 14:37
da ZeroUno
prova anche con:
Codice: Seleziona tutto
$ wget http://localhost/test.php -O immagine.png
$ file immagine.png
e vedi cosa ti dice
ancora meglio escludi il webserver
utile è anche vedere le intestazioni