Discussione: [php]Estrarre immagini
View Single Post
Old 26-02-2007, 09:12   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Cittā: TO
Messaggi: 5206
Quote:
Originariamente inviato da scrat84 Guarda i messaggi
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...
Innanzitutto suppongo che nel database tu abbia l'intero contenuto binario della immagine, giusto? (ad esempio in un campo BLOB).
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%)
andbin č offline   Rispondi citando il messaggio o parte di esso