Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Dal palco di Proofpoint Protect 2025 emerge la strategia per estendere la protezione dagli utenti agli agenti IA con il lancio di Satori Agents, nuove soluzioni di governance dei dati e partnership rafforzate che ridisegnano il panorama della cybersecurity
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Dopo alcuni anni di assenza dai cataloghi dei suoi televisori, Hisense riporta sul mercato una proposta OLED che punta tutto sul rapporto qualità prezzo. Hisense 55A85N è un televisore completo e versatile che riesce a convincere anche senza raggiungere le vette di televisori di altra fascia (e altro prezzo)
Recensione Borderlands 4, tra divertimento e problemi tecnici
Recensione Borderlands 4, tra divertimento e problemi tecnici
Gearbox Software rilancia la saga con Borderlands 4, ora disponibile su PS5, Xbox Series X|S e PC. Tra le novità spiccano nuove abilità di movimento, un pianeta inedito da esplorare e una campagna che lascia al giocatore piena libertà di approccio
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 29-11-2008, 12:45   #1
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2682
[PHP] come realizzare ciò?

Ciao,
qualcuno mi aiuta a chiarirmi un attimo le idee su questa cosa: devo realizzare ciò:
Ci sono 3 pagine web: A, B e C

La pagina A contiene un form, l'utente compila tale form e quando invia i dati essi vengono inviati ad una pagina B ma all'utente deve essere visualizzata la pagina C e non deve visualzzare la pagina B.

cosami invento? (Conosco pochissimo php)

Grazie
Andrea
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 13:48   #2
vizzz
Senior Member
 
L'Avatar di vizzz
 
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
Quote:
Originariamente inviato da D4rkAng3l Guarda i messaggi
Ciao,
qualcuno mi aiuta a chiarirmi un attimo le idee su questa cosa: devo realizzare ciò:
Ci sono 3 pagine web: A, B e C

La pagina A contiene un form, l'utente compila tale form e quando invia i dati essi vengono inviati ad una pagina B ma all'utente deve essere visualizzata la pagina C e non deve visualzzare la pagina B.

cosami invento? (Conosco pochissimo php)

Grazie
Andrea
la pagina B quando finisce di fare quello che deve fare chiama la funzione "header".

header('Location: C.php')
__________________
ho concluso con: kvegeta, doctordb, Leland Gaunt.
vizzz è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 14:01   #3
codcata
Member
 
Iscritto dal: Jun 2008
Città: Torino
Messaggi: 118
ma header() e' diversa da include()? cioe', fa la stessa cosa?
codcata è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 14:04   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da codcata Guarda i messaggi
ma header() e' diversa da include()? cioe', fa la stessa cosa?
No, assolutamente non c'entra niente. header aggiunge appunto un header alla risposta http, in questo caso invita il browser ad andare a caricare la pagina C.php
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 14:13   #5
codcata
Member
 
Iscritto dal: Jun 2008
Città: Torino
Messaggi: 118
uh
codcata è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 15:57   #6
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2682
ragazzi, allora io ho realizzato queste 3 pagine:

paginaA che contiene il form ed invia i dati con POST a pagina B:

Codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
</head>

<body>

<form name="datiUtenti"action="paginaB.php" method="POST">
	
    <label>Dato 1: <input type="text" name="dato1" value="tuo testo"></label><br  /><br  />
    <label>Dato 2: <input type="text" name="dato2" value="tuo testo"></label><br  /><br  />
    <label>Dato 3: <input type="text" name="dato3" value="tuo testo"></label><br  /><br  />
    
    <button type="submit">Invia i dati</button>
   

</form>
 
</body>
</html>
Poi c'è PaginaB che riceve i dati da Pagina A e fà un'elaborazione (non conoscendo bene PHP ho usato la echo anche se non dovrebbe stampare nulla ma solo elaborare dei dati senza visualizzare nulla).
A questo punto all'utente non dovrebbe essere visualizzata PaginaB ma PaginaC...ho inserito l'header come mi era stato detto ma non funziona

Codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
</head>

<body>
<?php
	header('Location: paginaC.html');
	echo "Il dato 1 vale: $_POST[dato1] <br>";
	echo "Il dato 1 vale: $_POST[dato2] <br>";
	echo "Il dato 1 vale: $_POST[dato3] <br>";

	
?>
    
</body>
</html>
e paginaC che dovrebbe essere aperta dopo che paginaB ha ricevuto ed elaborato i dati:

Codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
</head>

<body>

<H1>PAGINA C DOVE L'UTENTE VIENE RIMANDATO DOPO AVER COMPILATO IL FORM NELLA PAGINA A ED AVER INVIATO I DATI ALLA PAGINA DI ELABORAZIONE B</H1>
</body>
</html>
Dopo aver inviato i dati a paginaB mi viene dato questo output che è errato:


Warning: Cannot modify header information - headers already sent by (output started at c:\programmi\easyphp1-8\www\formtest\paginab.php:9) in c:\programmi\easyphp1-8\www\formtest\paginab.php on line 10
Il dato 1 vale: tuo testo
Il dato 1 vale: tuo testo
Il dato 1 vale: tuo testo

Cosa devo fare? come risolvo? please è urgente

Grazie
Andrea
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 16:06   #7
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Il motivo è che hai già fatto un output, header lo puoi usare solo prima di qualsiasi output (tutto l'html che hai stampato prima del tag di php).
La struttura della pagina deve essere:

<?php
/*elaborazione dati del form*/
...
...
...
header('Location: paginaC.html');
?>
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 16:11   #8
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2682
Quote:
Originariamente inviato da cionci Guarda i messaggi
Il motivo è che hai già fatto un output, header lo puoi usare solo prima di qualsiasi output (tutto l'html che hai stampato prima del tag di php).
La struttura della pagina deve essere:

<?php
/*elaborazione dati del form*/
...
...
...
header('Location: paginaC.html');
?>

mmm ho fatto come dici te,ma mi dà il seguente warning e non và su paginaC.html

Warning: Cannot modify header information - headers already sent by (output started at c:\programmi\easyphp1-8\www\formtest\paginab.php:9) in c:\programmi\easyphp1-8\www\formtest\paginab.php on line 12

codice:
Codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
</head>

<body>
<?php
	/* Elabrazione dei dati del form */
	
	header('Location: paginaC.html');
?>
    
</body>
</html>
Come mai? da che dipende?

Grazie
Andrea
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 16:14   #9
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2682
doh sul mio server web su Aruba funziona, in locale con easyphp no...strano...why?
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 16:16   #10
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Non devi mettere questo:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
</head>

<body>


Quello è un output e non devi fare un output prima di header !!!
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 16:18   #11
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2682
Quote:
Originariamente inviato da cionci Guarda i messaggi
Non devi mettere questo:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
</head>

<body>


Quello è un output e non devi fare un output prima di header !!!
capito...ma perchè su Aruba funziona lo stesso?
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 16:23   #12
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da D4rkAng3l Guarda i messaggi
capito...ma perchè su Aruba funziona lo stesso?
Probabilmente avranno attivato qualche opzione che bufferizza l'output prima di spedirlo al client. Ad esempio su hosting Windows con IIS dovrebbe avvenire di default.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 16:31   #13
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2682
ok c'è un problema...la persona che mi ha chiesto il favore di farlgi questo accrocchio mi ha appena detto che l'equivalente pratico di paginaB non può toccarla...quindi il sistema dell'header che rimanda a PaginaB non è usabile...
c'è una qualsiasi soluzione (anche javascript) che sia proprio PaginaA a mandare a PaginaC dopo aver inviato i dati a PaginaB?

c'è soluzione o non se ne esce?

Grazie
Andrea
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 16:40   #14
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Non che mi risulti...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 23:47   #15
Torav
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 558
puoi fare diverse cose "sporche" se proprio non puoi mettere header prima di qualsiasi output come diceva cionci:

1) Puoi dare un <body onload="window.location='paginaC.html'"> nella pagina B, in questo modo non appena avrà finito di fare la roba php e avrà caricato B ti rimanderà direttamente a C

2) Puoi mettere un <meta http-equiv="Refresh" content="5; url=paginaC.html">, che ti manderà a C dopo 5 secondi (puoi cambiare il 5 con qualsiasi numero tu voglia). Questo è MOLTO deprecato e non dovrebbe essere utilizzato se proprio non è necessario
Torav è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2008, 07:43   #16
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Però la 2 non ti garantisce il completo caricamento della pagina. In ogni caso ha detto che non può modificare la pagina B, quindi è un problema
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2008, 09:59   #17
CozzaAmara
Senior Member
 
L'Avatar di CozzaAmara
 
Iscritto dal: Nov 2008
Messaggi: 411
Come non detto.
CozzaAmara è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2008, 11:42   #18
Torav
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 558
Quote:
Originariamente inviato da cionci Guarda i messaggi
Però la 2 non ti garantisce il completo caricamento della pagina. In ogni caso ha detto che non può modificare la pagina B, quindi è un problema
ah beh se B non si può toccare direi che, a meno di non utilizzare ajax in maniera astuta, sia difficile realizzare il tutto
Torav è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2008, 15:57   #19
n0ise
Senior Member
 
L'Avatar di n0ise
 
Iscritto dal: Sep 2002
Città: localhost
Messaggi: 1115
Quote:
Originariamente inviato da D4rkAng3l Guarda i messaggi
ok c'è un problema...la persona che mi ha chiesto il favore di farlgi questo accrocchio mi ha appena detto che l'equivalente pratico di paginaB non può toccarla...quindi il sistema dell'header che rimanda a PaginaB non è usabile...
c'è una qualsiasi soluzione (anche javascript) che sia proprio PaginaA a mandare a PaginaC dopo aver inviato i dati a PaginaB?

c'è soluzione o non se ne esce?

Grazie
Andrea
hmm..nella paginaB potresti creare un iframe della paginac, e i valori della b metterli come hidden
__________________
« Indovina la foto e vinci premi! GeoGuess.com «« [ «
« MacBook Pro i7 2.2 GhZ 6750M + SSD EVO 250GB - Samsung S7 «
n0ise è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2008, 16:49   #20
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2682
Quote:
Originariamente inviato da n0ise Guarda i messaggi
hmm..nella paginaB potresti creare un iframe della paginac, e i valori della b metterli come hidden
ragazzi lasciamo stare tanto non era neanche per me...la paginaB era su di un altro sito esterno che non posso toccare poichè non ho accesso
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint Cybersecurity: email, utenti e agenti IA, la nuo...
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti Hisense A85N: il ritorno all’OLED è convi...
Recensione Borderlands 4, tra divertimento e problemi tecnici Recensione Borderlands 4, tra divertimento e pro...
TCL NXTPAPER 60 Ultra: lo smartphone che trasforma la lettura da digitale a naturale TCL NXTPAPER 60 Ultra: lo smartphone che trasfor...
Un fulmine sulla scrivania, Corsair Sabre v2 Pro ridefinisce la velocità nel gaming Un fulmine sulla scrivania, Corsair Sabre v2 Pro...
Arriva Logitech MX Master 4, mouse super...
Storie di Brand racconta la nascita dell...
EFF lancia l'allarme: con Chat Control l...
Il nuovo tablet 'Pro' di HONOR punter&ag...
Trasferire una eSIM TIM sul nuovo iPhone...
Torna il super notebook Lenovo con Core ...
MacBook Pro: prima un refresh e poi il s...
Mondaic, il software nato per Marte che ...
SpaceX annuncia l'undicesimo volo del ra...
CMF lancia le sue prime cuffie over-ear:...
Condannata a Londra la protagonista dell...
Addio Amazon? ChatGPT ora ti fa comprare...
YouTube chiude la causa con Trump: accor...
Avio: contratto da 40 milioni di € da ES...
Claude Sonnet 4.5, il nuovo modello di A...
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: 08:18.


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