|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Feb 2007
Messaggi: 19
|
[php]Estrarre immagini
Ciao ragazzi ho un problema da risolvere.
Io devo scrivere su delle immagini del testo utilizzando le librerie gd. Se l'immagine è presente in una cartella sul server con questo codice: list($width, $height, $type, $attr) = getimagesize($_SERVER['DOCUMENT_ROOT'].'/foto/a.jpg'); riesco a estrarre l'immagine e poi scriverci ma se io le immagini le ho in un database come faccio a estrarle? Probabilmente devo cambiare l'indirizzo $_SERVER['DOCUMENT_ROOT'].'/foto/a.jpg' ma proprio non so come... Graxie a tutti! ![]() |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
In questo caso hai 2 possibilità: - Leggere l'immagine dal database e scaricarla temporaneamente da qualche parte su disco. getimagesize() si aspetta il nome di un file, quindi l'immagine deve essere sul file-system. - Se l'immagine ce l'hai sul database, si suppone che poco prima di inserirla nel db ce l'avevi sul file-system (ad esempio da un upload, per fare un esempio). In quel caso ti basterebbe mettere nella tabella anche le informazioni fornite da getimagesize(). ![]() Io direi che ti conviene usare il secondo modo. Tra l'altro puoi usare la funzione imagecreatefromstring() che consente di creare una risorsa gd usando i dati binari della immagine dentro una stringa. Quindi non hai bisogno di scaricare sul file-system l'immagine.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#3 |
Junior Member
Iscritto dal: Feb 2007
Messaggi: 19
|
Ciao infatti ho pensato anche io al secondo modo e funziona.
Ho risolto il problema che ti ho detto sopra però ora l'immagine creata (con la scritta) la vorrei salvare ancora nel database. Ho usato questa funzione imagejpeg($thumb,'$destinazione', 100); ma nella variabile destinazione cosa metto per salvare l'immagine, considerando che imagejpeg restituisce un booleano? Grazie! |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Insomma ... usando quel parametro puoi solo scrivere l'immagine su un file e basta. Certo ... si potrebbe scriverla su disco, aprire il file, leggerla e metterla in una stringa e alla fine inserirla nel db. Ma sarebbe poco efficiente, secondo me. Ma c'è un'altra soluzione: usare le "Output Control Functions". Codice:
ob_start (); imagejpeg ($img, NULL, 100); $image_data = ob_get_contents (); ob_end_clean ();
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#5 |
Junior Member
Iscritto dal: Feb 2007
Messaggi: 19
|
Ok provo un po s tudiare quello che mi hai scritto poi ti faccio sapere se incontro problemi!
Grazie per l'aiuto! ciao ciao |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:33.