23/09/12 22:20
Roby94
Salve oggi mi sono trovato davanti allo sviluppo di una classe per la gestione di immagini, attraverso le librerie GD. Ho fatto in modo che la classe possa caricare file di tipo png, gif, jpg e jpeg, poi mi sono chiesto, e se volessi lavorare importando un immagine generata da un file php? beh la mia prima reazione è stata, il problema si risolve da solo in quanto quando in php do come output un immagine impostando prima gli header (es header('Content-type: image/png')) quindi se cerco di ottenere la tipologia di file con mime_content_type essa mi restituera image/png... Sono stato troppo speranzoso, in quanto il valore di ritorno è text/x-php in primo piano mi potreste spiegare perche mi arriva questo tipo di mine e non quello impostato negli header? e in secondo luogo come posso fare per capire se una pagina php mi restituisce un immagine?
Grazie mille in anticipo a tutti e aggiungo che spero in una risposta XD
aaa
24/09/12 7:15
Sevenjeak
Strano che ti restituisce quel Content-type, in ogni volta che ho usato la libreria gd non ho mai ottenuto una cosa del genere, potresti postare il tuo codice?
Rispondendo alla tua seconda domanda, la prima non è stata abbastanza chiara, se il php restituisce un'immagine si riconosce al punto dal tipo di header passato al browser.
In ogni caso sai che la funzione header(), visto che definisce l'intestazione del file, deve essere dichiarata prima di ogni output?
P.S.: Non conosco la funzione mime_content_type() ma dovrebbe restituire il mime-type ( originale ) del file, in questo caso con header non modifichi im contet-type() originare del file, ma modifichi il content-type del file inviato dal server al browser, almeno credo.
Ultima modifica effettuata da Sevenjeak 24/09/12 7:32
aaa
24/09/12 13:14
Sevenjeak
Non te lo so dire, non ho mai usato la funzione per analizzare il mime-type prodotto.
Cmq, nel tuo precedente messaggio avevo capito che avevi problemi a generare l'immagine, mi sembrava al quando strana la cosa.
Spiegati meglio, a cosa ti serve il Content-type generato dal file? devi per caso utilizzarlo per rigenerale l'immagine con lo stesso Content-type o ti serve per altro? se si è possibile adottare un'altra soluzione, molto più semplice.
aaa
24/09/12 15:05
Roby94
Chiedo scusa, mi sembrava di essermi spiegato bene. Ho parlato di importare un immagine quindi con funzioni come imagecreatefrompng quindi la determinazione del mine mi serve per scegliere la funzione adatta per importare suddetta immagine
aaa
25/09/12 6:40
Sevenjeak
Ah, si scusa, infatti leggendo bene il tuo precedente post ho capito meglio cosa vuoi fare.
In poche parole te effettui l'upload di un file immagine, ma dove la salvi l'immagine, in un database, visto che la rigeneri successivamente con un'altro script.
Nel caso la salvi nel database non hai considerato l'idea di salvare, durante l'uppload dell'immagine, anche il suo mime-type.
Se postavi lo script il tuo problema si capiva subito.
aaa
26/09/12 9:59
Sevenjeak
Ora ho capito meglio la cosa, la funzione
cUrl potrebbe anche andare bene per recuperare l'header del file, te sai come fare questo? ma non saprei il risultato prodotto, visto che non la usa da molto tempo la funzione, nel caso restituisce i byte dell'immagine dovresti cambiare anche il metodo per stampare l'immagine a video in questo modo:
header("Content-type: header_file");
echo $bytes_file;
Ultima modifica effettuata da Sevenjeak 26/09/12 9:59
aaa