Accedi per seguire   
Seguaci 0
Patola

Resize Immagini

7 messaggi in questa discussione

Ciao a tutti!

ho un problemino con uno script php per il resize delle immagini.

l'ho trovato in rete. si prende un file immagine che viene scelto dall'utente sul proprio hd direttamente e poi lo dovrebbe modificare nelle dimensioni e uploadare sul server.

l'upload funziona ma la resize no e non me lo spiego.

vi posto il pezzo di codice incriminato:

/*== temp image file -- use "tempnam()" to generate the temp

file name. This is done so if multiple people access the

script at once they won't ruin each other's temp file ==*/

$tmpimg = tempnam("/public/tmp", "MKUP");

/*== Step 1: djpeg decompresses jpeg to pnm ==*/

system("djpeg $imgfile >$tmpimg");

/*== Steps 2&3: scale image using pnmscale and then

pipe into cjpeg to output jpeg file ==*/

/* *** RESIZE *** */

system("pnmscale -xy 250 200 $tmpimg | cjpeg -smoo 10 -qual 50 >$imgfile");

unlink($tmpimg);

mi chidevo.. vista l'assoluta semplicità del codice.. può essere un problema di librerie?

io ho l'hosting windows su aruba.

possibile che non supporti pnmscale, cjpeg e djpeg?

non essendo affatto pratica di php non ho la minima idea se queste sono "funzioni standard" oppure no!

se così non fosse allora il problema quale potrebbe essere?

spero che mi possiate aiutare in qualche modo a capire.

Grazie!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

ciao,

in realtà se vuoi sfruttare a pieno PHP e la gestione dei file, penso ti convenga passare ad un hosting linux, che riesce ad avere una gestione migliore di PHP rispetto ai motori Windows, oltre al problema della gestione delle cartelle (sull'hosting windows, potrai far uploadare il file solo nella cartella 'public')

Il codice che hai segnalato è per il solo ridimensionamento dell'immagine, qui è disponibile uno che ti permette di effettuare precedentemente anche l'upload:

http://blazonry.com/scripting/upload-size.php

Tuttavia per far funzionare questi script, hai bisogno di farti installare delle librerie di PHP, quali djpeg, cjpeg e pnmscale.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ciao!

grazie per la risposta.. tra l'altro ti ho risposto al MP ma non avevo letto ancora quello che mi scrivevi qui..

come ti dicevo questa è solo una parte dello script, qui c'è solo la resize. non avevo messo il resto perchè l'upload funziona!

cmq mi confermi che è un problema di librerie?

sai già per certo che quelle non sono installate con l'hosting windows?

ti metto il link (spero si possa fare, non mi ricordo le regole..) di aruba con l'elenco delle librerie sul server in cui ho il dominio.

http://webs124.aruba.it/ver.php

non so quale a "pacchetto" di librerie appartengono pnmscale ecc..

puoi dargli un'occhiata?

grazie!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

le librerie PHP da installare (che nell'installazione classica non sono incluse) sono: djpeg, cjpeg e pnmscale.

Dovrai chiedere ad Aruba se te le lasciano installare.. ma sinceramente sono un po perplesso... generalmente non fanno upgrade di script o librerie...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

ok!

penso allora che dovrò migrare ad un hosting linux o inventarmi qualcosaltro!

grazie dell'aiuto!

:)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

prima di migrare però sullo stesso aruba, chiedi se quelle librerie sono installate o installabili sul tuo prossimo hosting linux. :)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Su Aruba puoi usare tranquillamente le librerie GD, native di PHP, oppure ImageMagick, quest'ultimo disponibile su Aruba solo con PHP 5, a cui però da almeno un mese si può migrare senza problemi. Sia GD che ImageMagick sono soluzioni crossplatform, ciò significa che sono presenti sia su linux che su windows anche se non ti consiglio l'hosting windows con PHP per via di alcuni limiti di configurazione.

Djpeg stesso è disponibile su linux, tuttavia non credo sia accessibile su hosting condiviso, forse sui virtual server si, ma costano di più. Ciao :)

P.S. con GD hai un unico limite, ne ho parlato qui tempo fa: http://forum.wininizio.it/index.php?showtopic=70143&hl=

Modificato da cereal

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

Devi essere un utente registrato per partecipare

Crea un account

Iscriviti per un nuovo account nella nostra community. È facile!


Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.


Accedi Ora
Accedi per seguire   
Seguaci 0