Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 30-05-2010, 19:37   #1
Alello
Senior Member
 
L'Avatar di Alello
 
Iscritto dal: Apr 2006
Messaggi: 926
[PHP] Caricare un file in memoria ($_FILES) si può fare??? HELP

Ciao a tutti,

sto cercando di modificare l'upload di una galleria foto .

Voglio fare l'upload delle foto contenute in una cartella che si trova già sul server.

Il problema è questo: la funzione della galleria permette l'upload da file del disco con il form quindi input type=file . tasto sfoglia e caricamento del file ..

In questo modo viene istanziato l'oggetto $_FILES che memorizza temporaneamente il file sul server. per poi metterlo nel posto in cui deve stare con un'altra funzione..

* $_FILES["file"]["name"] - the name of the uploaded file
* $_FILES["file"]["type"] - the type of the uploaded file
* $_FILES["file"]["size"] - the size in bytes of the uploaded file
* $_FILES["file"]["tmp_name"] - the name of the temporary copy of the file stored on the server
* $_FILES["file"]["error"] - the error code resulting from the file upload


dove "file" è il tag name dell'input di tipo file della form


Quello che vorrei fare è istanziare lo stesso oggetto ma da un file presente sull'host tramite url .. In questo modo potrei fare un ciclo di tutti i file della cartella sull'host . e uno per uno istanziarli in $_FILES e richiamare add_picture della galleria. In modo da non toccare nulla...


Ho cercato in tutti i modi su Google ma niente..

Il problema è questo campo:
$_FILES["file"]["tmp_name"]

gli altri riesco ad emularli.

tmp_name è la path del file temporaneo creato sul server che è una copia del file caricato.

è possibile risolvere questo problema?? che dite??


inoltre?

se faccio una fopen di un file questo non mi dovrebbe creare una copia in $_FILES. Da quello che ho visto no..

Sono certo che l'upload temporaneo in memoria si possa fare con php .. ho bisogno solo della funzione.. o il modo per farlo..


GRAZIEEEEEE
__________________
Intel COre 2 Duo E5200 2.5Ghz 2Mb - Arctic Cooling Freezer 7PRO PWM 775 - ASROCK 775 P43R1600Twins-110dB - ATI HD4850 Gainward Golden Sample 512MB - DDR2 800Mhz 4GB CORSAIR TWIN2X KIT CL5 rt. (2x2GB) - COOLERMASTER Elite 330 Midi Black - ARCTIC COOLING Fan 12 PWM rt 120x120 - Corsair CMPSU-450VXEU 450W - SEAGATE 500GB ST3500320AS 7200rpm 32MB 7200.11 - DVD-RW Pioneer DVR-216D-BK Nero SATA - ASUS LCD 22" VW222U 2ms
Alello è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2010, 10:25   #2
flx2000
Bannato
 
L'Avatar di flx2000
 
Iscritto dal: Nov 2002
Città: Roma
Messaggi: 810
Quote:
Originariamente inviato da Alello Guarda i messaggi
Ciao a tutti,

sto cercando di modificare l'upload di una galleria foto .

Voglio fare l'upload delle foto contenute in una cartella che si trova già sul server.

Il problema è questo: la funzione della galleria permette l'upload da file del disco con il form quindi input type=file . tasto sfoglia e caricamento del file ..

In questo modo viene istanziato l'oggetto $_FILES che memorizza temporaneamente il file sul server. per poi metterlo nel posto in cui deve stare con un'altra funzione..

* $_FILES["file"]["name"] - the name of the uploaded file
* $_FILES["file"]["type"] - the type of the uploaded file
* $_FILES["file"]["size"] - the size in bytes of the uploaded file
* $_FILES["file"]["tmp_name"] - the name of the temporary copy of the file stored on the server
* $_FILES["file"]["error"] - the error code resulting from the file upload


dove "file" è il tag name dell'input di tipo file della form


Quello che vorrei fare è istanziare lo stesso oggetto ma da un file presente sull'host tramite url .. In questo modo potrei fare un ciclo di tutti i file della cartella sull'host . e uno per uno istanziarli in $_FILES e richiamare add_picture della galleria. In modo da non toccare nulla...


Ho cercato in tutti i modi su Google ma niente..

Il problema è questo campo:
$_FILES["file"]["tmp_name"]

gli altri riesco ad emularli.

tmp_name è la path del file temporaneo creato sul server che è una copia del file caricato.

è possibile risolvere questo problema?? che dite??


inoltre?

se faccio una fopen di un file questo non mi dovrebbe creare una copia in $_FILES. Da quello che ho visto no..

Sono certo che l'upload temporaneo in memoria si possa fare con php .. ho bisogno solo della funzione.. o il modo per farlo..


GRAZIEEEEEE
Non è possibile modificare il puntamento a un file trasferito perché il protocollo prevede un hash temporaneo univoco per ogni trasferimento.
La variabile $_FILES viene riempita dal preprocessore prima di eseguire il tuo script quindi i valori ivi presenti sono in sola lettura.
Le funzioni PHP come fopen non scrivono sulle variabili globali quindi $_FILES è estranea al comando.

Puoi realizzare uno script che esegue un reale upload di tipo type=file realizzando uno script PHP che preleva il file da inviare con fopen e lo uploada sul server di destinazione tramite il comando header.
flx2000 è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2010, 11:21   #3
Alello
Senior Member
 
L'Avatar di Alello
 
Iscritto dal: Apr 2006
Messaggi: 926
ma questa variabile cos'è ????

$_FILES["file"]["tmp_name"] - the name of the temporary copy of the file stored on the server


stampandolo mi da una cosa del genere: /tmp/phpYIpIfw


ma phpYIpIfw è il nome di un file senza estensione?


perchè se al posto di

/tmp/phpYIpIfw

gli do /foto/foto.jpg non funziona???
__________________
Intel COre 2 Duo E5200 2.5Ghz 2Mb - Arctic Cooling Freezer 7PRO PWM 775 - ASROCK 775 P43R1600Twins-110dB - ATI HD4850 Gainward Golden Sample 512MB - DDR2 800Mhz 4GB CORSAIR TWIN2X KIT CL5 rt. (2x2GB) - COOLERMASTER Elite 330 Midi Black - ARCTIC COOLING Fan 12 PWM rt 120x120 - Corsair CMPSU-450VXEU 450W - SEAGATE 500GB ST3500320AS 7200rpm 32MB 7200.11 - DVD-RW Pioneer DVR-216D-BK Nero SATA - ASUS LCD 22" VW222U 2ms
Alello è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2010, 11:35   #4
flx2000
Bannato
 
L'Avatar di flx2000
 
Iscritto dal: Nov 2002
Città: Roma
Messaggi: 810
Quando uno script PHP riceve un file in upload, questo file viene caricato sul webserver in una cartella prestabilita (nel tuo caso /tmp) e gli viene assegnato un nome temporaneo (nel tuo caso phpYIpIfw).
La funzione di quella variabile è di farti sapere come e dove è stato salvato il file che hai inviato via upload.
Grazie ad essa puoi lavorare sul file che di solito si prende e si sposta nella directory finale rinominandolo col nome originale tramite la funzione move_uploaded_file().

Ultima modifica di flx2000 : 31-05-2010 alle 11:37.
flx2000 è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2010, 11:38   #5
Alello
Senior Member
 
L'Avatar di Alello
 
Iscritto dal: Apr 2006
Messaggi: 926
Quote:
Originariamente inviato da flx2000 Guarda i messaggi
Quando uno script PHP riceve un file in upload, questo file viene caricato sul webserver in una cartella prestabilita (nel tuo caso /tmp) e gli viene assegnato un nome temporaneo (nel tuo caso phpYIpIfw).
Vista la sua funzione non è ovviamente possibile cambiare il contenuto della variabile.
Grazie ad essa puoi lavorare sul file uploadato, che in genere si prende e si sposta nella directory finale rinominandolo col nome originale tramite la funzione move_uploaded_file().
si questo mi era chiaro ma il contenuto di tmp_name è una path ?

se alla funzione che si aspetta tmp_name gli passo la path del nome di un file già residente in host perchè non va ?

non dovrebbe funzionare???
__________________
Intel COre 2 Duo E5200 2.5Ghz 2Mb - Arctic Cooling Freezer 7PRO PWM 775 - ASROCK 775 P43R1600Twins-110dB - ATI HD4850 Gainward Golden Sample 512MB - DDR2 800Mhz 4GB CORSAIR TWIN2X KIT CL5 rt. (2x2GB) - COOLERMASTER Elite 330 Midi Black - ARCTIC COOLING Fan 12 PWM rt 120x120 - Corsair CMPSU-450VXEU 450W - SEAGATE 500GB ST3500320AS 7200rpm 32MB 7200.11 - DVD-RW Pioneer DVR-216D-BK Nero SATA - ASUS LCD 22" VW222U 2ms
Alello è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 08:54   #6
flx2000
Bannato
 
L'Avatar di flx2000
 
Iscritto dal: Nov 2002
Città: Roma
Messaggi: 810
Quote:
Originariamente inviato da Alello Guarda i messaggi
si questo mi era chiaro ma il contenuto di tmp_name è una path ?

se alla funzione che si aspetta tmp_name gli passo la path del nome di un file già residente in host perchè non va ?

non dovrebbe funzionare???
Se per "gli passo" intendi che glielo assegni allora è normale che non funzioni, perché come ti avevo detto è in sola lettura.
Comunque sì, è la path del file temporaneo che contiene il file trasferito con l'upload.
flx2000 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Un piccolo accessorio trasforma lo smart...
Dopo 370 anni il Cyphral Distich non è p...
Oppo Find X10, X10 Pro Max e X10 E: conf...
Dal microscopio all'IA: un cervello di i...
Cyberpunk 2077 arriverà su Battle...
Altro che divieto: interi pallet di GeFo...
QNAPTS-h966TX, il NAS per chi fa editing...
Il trucco semplicissimo per installare W...
Apple rinvia due novità di iOS 27...
Una memoria ferroelettrica raggiunge 10 ...
Honor Magic 9, Pro Max e Super Edition: ...
24 offerte Amazon da non perdere, dalla ...
Apple starebbe progettando i propri cont...
Niente borsa per OpenAI prima del 2027: ...
Meta potrebbe aver mostrato in anticipo ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:35.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v