2014-07-03 12 views
5

Voglio reindirizzare un utente da page1 a pagina 2 con alcuni dati POST .Page1 e page2 sono in due domini diversi e non ho il controllo su entrambi di essiRedirect un URL con i dati sul post

Pagina 1

<?php 
$chars="stackoverflowrules" 
?> 

voglio presentare i caratteri come un dato postali e il reindirizzamento alla pagina 2.

Poi una pagina 2 voglio usare i dati pOST come

<?php 
$token = $_POST['chars']; 
echo $token; 
?> 

risposta

4

ho fatto con una forma e JS

A pagina 1

<?php 
$chars="stackoverflowrules"; 
?> 
<html> 
<form name='redirect' action='page2.php' method='POST'> 
<input type='hidden' name='chars' value='<?php echo $chars; ?>'> 
<input type='submit' value='Proceed'> 
</form> 
<script type='text/javascript'> 
document.redirect.submit(); 
</script> 
</html> 

A pagina 2

<?php 
$token = $_POST['chars']; 
echo $token; 
?> 
1
  1. A pagina 1, utilizzare curl di inviare i dati alla pagina 2.
  2. Lì, memorizzare i dati POST'ed da qualche parte (database?).
  3. Reindirizza dalla pagina 1 alla pagina 2
  4. Recupera i dati.
0

Per questo si desidera utilizzare curl().

Su page1.php, procedere come segue:

$data = $_POST; 

// Create a curl handle to domain 2 
$ch = curl_init('http://www.domain2.com/page2.php'); 

//configure a POST request with some options 
curl_setopt($ch, CURLOPT_POST, true); 

//put data to send 
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 

//this option avoid retrieving HTTP response headers in answer 
curl_setopt($ch, CURLOPT_HEADER, 0); 

//we want to get result as a string 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 

//execute request 
$result = curl_exec($ch); 

// now redirect to domain 2 
header("Location: http://domain2.com/page2.php"); 

A pagina 2, è possibile recuperare i dati POST:

<?php 

$token = $_POST['secure_token']; 
echo $token; 

?> 
+2

Questo non funzionerà come previsto, perché ora ci sono 2 richieste a pagina 2. Uno è il post da curl. Secondo è il GET da 'header()'. Stai cercando di ottenere $ _POST da quest'ultimo, che non funzionerà. –