|
|||||||
|
|
|
![]() |
|
|
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: 02:06.




















