Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
Un proiettore economico, che fa della portabilità e immediatezza i suoi punti di forza. Adatto per una camera da letto o per la casa vacanze, è basato su sistema proprietario Linux ma offre piena compatibilità ufficiale a Netflix
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
Un notebook sviluppato in collaborazione con GoPro ma che risponde al meglio alle necessità di tutti coloro che creano contenuti video: robustezza, design, potenza di calcolo e funzionalità si abbinano al meglio tra di loro, pur se a prezzo di un costo elevato per via della tanta memoria onboard
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Ho affidato ai due modelli lo stesso mestiere ma non lo stesso identico prompt: trasformare una storia illustrata in un video usando una RTX 3090 e modelli locali. Ne sono usciti due film, due applicazioni e due idee opposte di efficienza. Fucina, progettata con Fable 5, colpisce di più nei primi secondi. Storyboard Studio, costruito con ChatGPT/Codex, regge meglio sulla distanza e vince il confronto complessivo, ma di stretta misura
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 01-10-2006, 16:45   #1
demos88
Senior Member
 
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
[PHP-HTML] Cancellare Post Data

Sto creando delle pagine php e mi sono trovato necessitato a usare un form html in esse. Il form mi serve per raccogliere dei dati da inserire in un database mysql mediante codice php. Il problema e' che questa pagina php spedisce i valori di POST della form a se stessa e il codice per l'inserimento nel DB e' contenuto nella stessa pagina php del form. Cio' comporta che, una volta inseriti i valori e inviati questi, ovviamente si riapre la stessa pagina, identica, con lo stesso form ma con l'aggiunta della scritta "Dati inviati con successo" in coda.
Questo e' l'effetto, dal punto di vista grafico, che voglio ottenere, cioe' rimango sempre nella stessa pagina php visualizzando sempre lo stesso form da compilare; cio' mi permette inserimenti veloci e continui.
Il punto sta nel fatto che se malauguratamente refresho la pagina, i valori POST si ripresentano immutati e il refresh comporta una loro rispedizione al codice php che va a inserirli ancora nel database.
Il mio obbiettivo e' fare in modo che una volta inseriti i dati nel db, i valori di post scompaiano, o comunque riuscire a fare in modo che il browser non riesca piu' a rispedirli, cosa che causerebbe un ulteriore inserimento degli stessi dati nel DB.
Ho letto in giro qualcosa su header, ma francamente non ho capito nulla

Qualcuno sa come fare?
__________________
CPU Ryzen 5900X @ 4,7Ghz + Thermalright Phantom Spirit 120 SE / MB Asus X470-F Gaming / RAM 2x16GB DDR4 Corsair 3600 CL16 / VGA Sapphire RX 7900 XT Nitro+ / SSD Crucial T500 1TB + Samsung 970 Pro 512GB + Sandisk 960GB Ultra II / PSU FSP Hydro G PRO 1000W / Headset Kingston HyperX Flight
demos88 è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2006, 22:10   #2
demos88
Senior Member
 
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
Ma sapete che statisticamente i miei post hanno il 90% di possibilità a rimanere senza risposte?

Mi serve decisamente un consiglio per ovviare al riinvio dei postdata con il refresh.
plz
__________________
CPU Ryzen 5900X @ 4,7Ghz + Thermalright Phantom Spirit 120 SE / MB Asus X470-F Gaming / RAM 2x16GB DDR4 Corsair 3600 CL16 / VGA Sapphire RX 7900 XT Nitro+ / SSD Crucial T500 1TB + Samsung 970 Pro 512GB + Sandisk 960GB Ultra II / PSU FSP Hydro G PRO 1000W / Headset Kingston HyperX Flight
demos88 è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 00:09   #3
Slide
Senior Member
 
L'Avatar di Slide
 
Iscritto dal: Mar 2006
Messaggi: 1377
Io credo che sia un problema incontrato da molti. Un ricerca su google gruppi potrebbe aiutarti.

Dunque, se l'utente esegue il refresh della pagina, l' array $_POST[] si
rirempie completamente? Sicuro che vi siano tutti i valori? Anche il nome del bottone "invia" ?

Fai qualche controllo... puoi stampare $_POST con
print_r
o
var_dump

Ora non ho l'ambiente di sviluppo sotto mano, mi spiace. Altrimenti facevo qualche prova anche se non tocco PHP da un bel po'.
Slide è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 00:24   #4
Slide
Senior Member
 
L'Avatar di Slide
 
Iscritto dal: Mar 2006
Messaggi: 1377
Hai già provato questa soluzione?

Thread su NG

Fai sapere come va
Slide è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 05:39   #5
demos88
Senior Member
 
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
Quote:
Originariamente inviato da Slide
Io credo che sia un problema incontrato da molti. Un ricerca su google gruppi potrebbe aiutarti.

Dunque, se l'utente esegue il refresh della pagina, l' array $_POST[] si
rirempie completamente? Sicuro che vi siano tutti i valori? Anche il nome del bottone "invia" ?

Fai qualche controllo... puoi stampare $_POST con
print_r
o
var_dump

Ora non ho l'ambiente di sviluppo sotto mano, mi spiace. Altrimenti facevo qualche prova anche se non tocco PHP da un bel po'.
Quando invio i dati con il bottone lui compila il vettore $_POST e lo spedisce a se stesso e li inserisce. I post data non vengono cancellati e rimangono in cache, tanto che facendo refresh, firef0x mi manda un messaggio di conferma di refresh in quanto ci sono proprio i post data e cliccando su prosegui vengono reinseriti tali e quali creando un doppione nel database.
Io voglio eliminare tutti i post, evitare che il browser li rilevi e mandi la finestrella di conferma, ed evitare in fin dei conti dei doppioni nel db.


edit: ho letto ora il tuo secondo post , oggi quando torno da scuola ci provo thx
__________________
CPU Ryzen 5900X @ 4,7Ghz + Thermalright Phantom Spirit 120 SE / MB Asus X470-F Gaming / RAM 2x16GB DDR4 Corsair 3600 CL16 / VGA Sapphire RX 7900 XT Nitro+ / SSD Crucial T500 1TB + Samsung 970 Pro 512GB + Sandisk 960GB Ultra II / PSU FSP Hydro G PRO 1000W / Headset Kingston HyperX Flight

Ultima modifica di demos88 : 02-10-2006 alle 05:41.
demos88 è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 08:28   #6
Slide
Senior Member
 
L'Avatar di Slide
 
Iscritto dal: Mar 2006
Messaggi: 1377
Quote:
Originariamente inviato da demos88
Quando invio i dati con il bottone lui compila il vettore $_POST e lo spedisce a se stesso e li inserisce. I post data non vengono cancellati e rimangono in cache, tanto che facendo refresh, firef0x mi manda un messaggio di conferma di refresh in quanto ci sono proprio i post data e cliccando su prosegui vengono reinseriti tali e quali creando un doppione nel database.
Io voglio eliminare tutti i post, evitare che il browser li rilevi e mandi la finestrella di conferma, ed evitare in fin dei conti dei doppioni nel db.


edit: ho letto ora il tuo secondo post , oggi quando torno da scuola ci provo thx
Eh, ho ben presente il problema e l'ho capito. Io volevo sapere se, per scrupolo, ti eri comunque fatto una stampa video dell'array $_POST sia prima che dopo il refresh, e magari avevi scoperto che differivano per uno o due valori.
Comunque, c'è mezzo mondo che si è confrontato sul problema e ti conviene vedere le diverse soluzioni.

Fammi sapere se sei riuscito a far funzionare la soluzione adottata in quell' NG.

ByeZ!
Slide è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 09:24   #7
kk3z
Senior Member
 
L'Avatar di kk3z
 
Iscritto dal: Nov 2003
Messaggi: 980
$_POST = array();
header("Location: {$_SERVER['PHP_SELF']}");
kk3z è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 14:45   #8
demos88
Senior Member
 
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
Quote:
Originariamente inviato da kk3z
$_POST = array();
header("Location: {$_SERVER['PHP_SELF']}");
Da quello che posso capire svuoti l'array $_POST e fai un reindirizzamento alla pagina su cui lavoro. Effettivamente se io, al posto di aggiornare, riapro la pagina stessa mediante "vai", i postdata si cancellano e funziona come vorrei.
Il problema e' che queste righe non ho ben capito dove posizionarle, oltretutto ovunque le metta ottengo che premendo il bottone di invio dati la pagina si ricarichi e in coda visualizzi la scritta:
Warning: Cannot modify header information - headers already sent by (output started at /home/www/nomesito.com/pagina.php:7) in /home/www/nomesito.com/pagina.php on line 147

Oltretutto i post data rimangono presenti, infatti se refresho la pagina ci sono ancora.

Puoi spiegarmi come usare quel codice?
__________________
CPU Ryzen 5900X @ 4,7Ghz + Thermalright Phantom Spirit 120 SE / MB Asus X470-F Gaming / RAM 2x16GB DDR4 Corsair 3600 CL16 / VGA Sapphire RX 7900 XT Nitro+ / SSD Crucial T500 1TB + Samsung 970 Pro 512GB + Sandisk 960GB Ultra II / PSU FSP Hydro G PRO 1000W / Headset Kingston HyperX Flight
demos88 è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2006, 16:41   #9
demos88
Senior Member
 
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
uppino?
__________________
CPU Ryzen 5900X @ 4,7Ghz + Thermalright Phantom Spirit 120 SE / MB Asus X470-F Gaming / RAM 2x16GB DDR4 Corsair 3600 CL16 / VGA Sapphire RX 7900 XT Nitro+ / SSD Crucial T500 1TB + Samsung 970 Pro 512GB + Sandisk 960GB Ultra II / PSU FSP Hydro G PRO 1000W / Headset Kingston HyperX Flight
demos88 è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2006, 17:08   #10
Slide
Senior Member
 
L'Avatar di Slide
 
Iscritto dal: Mar 2006
Messaggi: 1377
Quote:
Originariamente inviato da demos88
Warning: Cannot modify header information - headers already sent by (output started at /home/www/nomesito.com/pagina.php:7) in /home/www/nomesito.com/pagina.php on line 147

Oltretutto i post data rimangono presenti, infatti se refresho la pagina ci sono ancora.

Puoi spiegarmi come usare quel codice?
Ti tira fuori quell' errore perchè la funzione header() deve esser usata prima di inviare sull' http qualsiasi cosa. Quindi prima di "stampare" qualsiasi cosa, andrebbe quella chiamata.
Scaricati il manuale in formato CHM dal sito di php, così puoi cercare velocelmente le funzioni e capirne il funzionamento.

Ciao.
Slide è offline   Rispondi citando il messaggio o parte di esso
Old 04-10-2006, 17:29   #11
demos88
Senior Member
 
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
la funzione la avevo studiata pero' se la metto all'inizio del codice, quando vado a caricarla ovviamente l'header mi manda il loop il caricamento, se l'istruzione la metto nella stessa pagina che devo visualizzare è ovvio...
Ciò mi fa dedurre che dovrei fare piu' di una pagina ma non saprei come strutturarla... un header nella pagina che chiamo che mi reindirizza alla pagina del form? ma poi non e' la stessa cosa?

Non sono convinto
__________________
CPU Ryzen 5900X @ 4,7Ghz + Thermalright Phantom Spirit 120 SE / MB Asus X470-F Gaming / RAM 2x16GB DDR4 Corsair 3600 CL16 / VGA Sapphire RX 7900 XT Nitro+ / SSD Crucial T500 1TB + Samsung 970 Pro 512GB + Sandisk 960GB Ultra II / PSU FSP Hydro G PRO 1000W / Headset Kingston HyperX Flight
demos88 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
ASUS ProArt GoPro Edition è il notebook compatto per chi crea ASUS ProArt GoPro Edition è il notebook c...
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090 Fable e Sol a confronto: due cartoni animati cre...
Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile Il tablet rugged leggero e sottile: Lenovo Think...
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot AMD Advancing AI 2026: l'hardware AMD per le ela...
Rocket Factory Augsburg ha riscontrato u...
Blue Origin sta ricostruendo e modifican...
BMW taglierà 8.000 posti di lavor...
7.600 annunci di nudify app su Meta, tut...
Visa ne lascia a casa 2600: intelligenza...
Batterie sostituibili? Per Logitech, gli...
IBM: l'IA riduce i costi delle violazion...
Logitech G Cloud bocciata dal pubblico, ...
NVIDIA RTX Spark, provato un prototipo c...
Sony e Fujifilm: evacuate le fabbriche d...
Starship: Ship 40 continua a galleggiare...
UMC investe su Singapore e Tainan per ri...
Steam Machine, novità sulle code:...
Anche Foxconn abbandona VMware e sceglie...
Windows 11 migliora l'accessibilit&agrav...
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: 03:17.


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