PDA

View Full Version : PHP libreria GD


SteR9
31-03-2004, 20:57
ho installato php su win e non mi ha installato le dll...allora ho scaricato la cartella con i binari e me le sono prese...ho creato una cartella includes e le ho messe dentro e ho impostato nel file php.ini extension_dir = "C:\PHP\includes\"
e ho tolto il ";" da extension=php_gd2.dll
per quando carico una pagina mi da questo errore

Unknown(): Unable to load dynamic library 'C:\PHP\includes\php_gf2.dll' - impossibile trovare il modulo specificato

cosa pu essere che sbaglio?!la dir impostata in modo corretto.... :muro: :muro:
ciao:)

utrecht
01-04-2004, 09:51
Dipende dalla versione php (4.3 le supporta).

Nel file di configurazione di apache decommenta
extension=php_gd2.dll
dopodich copia il file php_gd2.dll dallla dir extensions in c:\winnt\system32\ (se hai win2000) oppure C:\WINDOWS\system (se hai XP)

Riavvia apache........
Controlli con phpinfo() che sia tutto a posto

SteR9
01-04-2004, 11:01
Originariamente inviato da utrecht
Dipende dalla versione php (4.3 le supporta).

Nel file di configurazione di apache decommenta
extension=php_gd2.dll
dopodich copia il file php_gd2.dll dallla dir extensions in c:\winnt\system32\ (se hai win2000) oppure C:\WINDOWS\system (se hai XP)

Riavvia apache........
Controlli con phpinfo() che sia tutto a posto
ho la 4.3.5 (l'ultima) quindi nn le supporta??e per scrivere le immagini con questa versione come devo fare??

cionci
01-04-2004, 11:12
Hai sbagliato directory...la dll si trova nella dir extensions e non nella dir includes... Non serve copiarla nella cartella system32...

SteR9
01-04-2004, 11:17
Originariamente inviato da cionci
Hai sbagliato directory...la dll si trova nella dir extensions e non nella dir includes... Non serve copiarla nella cartella system32...
ma nella dir di PHP nn ho la cartella extension....dove si trova?e cmq in php.ini ho cambiato l'indirizzo della cartella delle extension...

SteR9
01-04-2004, 15:21
risolto...probabilmente non era la dll corretta

Fenomeno85
01-04-2004, 15:29
be con questa libreria puoi fare veramente molto.
Per la mia tesina ho fatto grafici dinamici e sono una bellazza sovraumana.

~~ Sempre E Solo Lei ~~

SteR9
01-04-2004, 15:36
ho gi un problema...uso questo codice per creare un immagine...

<?php
header ("Content-type: image/png");
$img_handle = ImageCreate (230, 20) or die ("Cannot create image");
$back_color = ImageColorAllocate ($img_handle, 0, 10, 10);
$txt_color = ImageColorAllocate ($img_handle, 233, 114, 191);
ImageString ($img_handle, 31, 5, 5, "My first Program with GD", $txt_color);
ImagePng ($img_handle);
?>

ma mi da questo errore...
Warning: Cannot modify header information - headers already sent by (output started at c:\inetpub\wwwroot\PHP\immagini.php:6) in c:\inetpub\wwwroot\PHP\immagini.php on line 7
e le righe 6 e 7 sono
<?php
header ("Content-type: image/png");
devo forse configurare qualcosa?

Fenomeno85
01-04-2004, 15:40
prima di php non ci deve essere niente.

~~ Sempre E Solo Lei ~~

SteR9
01-04-2004, 15:43
Originariamente inviato da Fenomeno85
prima di php non ci deve essere niente.

~~ Sempre E Solo Lei ~~
prima di php ci sono solo i tag html...e anche togliendoli da l'errore...
:muro:

Fenomeno85
01-04-2004, 15:47
il codice l'ho provato e funziona.

~~ Sempre E Solo Lei ~~

SteR9
01-04-2004, 15:53
Originariamente inviato da Fenomeno85
il codice l'ho provato e funziona.

~~ Sempre E Solo Lei ~~
allora mi sa che un problema di iis,forse non lo supporta...oppure di php...tu che versione hai di php?

SteR9
01-04-2004, 16:11
risolto...dovevo mettere output_buffering = on
nel file php.ini....per invece di stamparmi l'immagine mi stampa
PNG  IHDRPLTE r`LIDATxбAMhF!a+(W&;xZi'J_DR+0w`fSc CYeGE*T,(Pe|&H;?&ֳ54I%ב[!i)1kg$;P Eo,{z:`̔,fS87ȐEE,N@4&gG2'D?ijIENDB`

questo anche se lo metto su lycos...

Fenomeno85
01-04-2004, 18:59
non gestisci il png .. cambia in jpeg ;)

~~ Sempre E Solo Lei ~~

SteR9
01-04-2004, 19:17
Originariamente inviato da Fenomeno85
non gestisci il png .. cambia in jpeg ;)

~~ Sempre E Solo Lei ~~
PNG Support enabled....quindi dovrebbe gestirlo...lo stesso errore me lo da con i jpeg.... :cry:

cionci
01-04-2004, 19:25
Originariamente inviato da SteR9
prima di php ci sono solo i tag html...e anche togliendoli da l'errore...
:muro:
Non ci deve essere alcun tag html o output prima dell'istruzione header...

SteR9
01-04-2004, 19:33
Originariamente inviato da cionci
Non ci deve essere alcun tag html o output prima dell'istruzione header...
in effetti ora va :D
prima avevo provato a toglierli e non andava cmq...boh...!meglio cos!
grazie

SteR9
01-04-2004, 19:51
ma se voglio inserire del codice html come devo fare??
ad esempio io ho questo script

<?php
header ("Content-type: image/jpeg");
$image_name="imm.jpg";
$src_img = imagecreatefromjpeg("$image_name");
$origw=imagesx($src_img);
$origh=imagesy($src_img);
$thumb_width="157";
$thumb_heigth = "118";
$dst_img = imagecreatetruecolor($thumb_width,$thumb_heigth);
imagecopyresampled($dst_img,$src_img,0,0,0,0,$thumb_width,$thumb_heigth ,imagesx($src_img),imagesy($src_img));
imagejpeg($dst_img,"",100);//100 qualit da 0 a 100
?>

se faccio cos

<?php
header ("Content-type: image/jpeg");
?>
<html>
<?php
$image_name="imm.jpg";
$src_img = imagecreatefromjpeg("$image_name");
$origw=imagesx($src_img);
$origh=imagesy($src_img);
$thumb_width="157";
$thumb_heigth = "118";
$dst_img = imagecreatetruecolor($thumb_width,$thumb_heigth);
imagecopyresampled($dst_img,$src_img,0,0,0,0,$thumb_width,$thumb_heigth ,imagesx($src_img),imagesy($src_img));
imagejpeg($dst_img,"",100);//100 qualit da 0 a 100
?>
</html>

mi da il solito errore...
grazie..

Fenomeno85
01-04-2004, 19:53
non lo metti ... se lo metti non funziona.

~~ Sempre E Solo Lei ~~

SteR9
01-04-2004, 20:28
Originariamente inviato da Fenomeno85
non lo metti ... se lo metti non funziona.

~~ Sempre E Solo Lei ~~
e se voglio scrivere del testo all'interno della pagina non posso?
ho provato sia con print che con echo...

cionci
01-04-2004, 20:50
Quando dai in output un'immagine devi creare solo quella...poi dal codice potrai linkare l'immagine in questo modo:

<img src="img.php?parametri1=valore1&....">

Fenomeno85
02-04-2004, 06:17
Originariamente inviato da cionci
Quando dai in output un'immagine devi creare solo quella...poi dal codice potrai linkare l'immagine in questo modo:

<img src="img.php?parametri1=valore1&....">

facendo cos non gli tocca prima salvare l'immagine??

~~ Sempre E Solo Lei ~~

SteR9
02-04-2004, 06:42
Originariamente inviato da Fenomeno85
facendo cos non gli tocca prima salvare l'immagine??

~~ Sempre E Solo Lei ~~
no,funziona alla grande!:)