2013-04-02 80 views
1

我有一個註冊表單附帶3頁。 我使用jquery $ post發佈無刷新錯誤消息 第二個php頁面將檢查所有數據。如果所有數據都正確,則會發送到第3頁(協議頁面)。如果用戶在第3頁中單擊同意,則所有數據都將寫入數據庫。php在if語句中發佈數據

但是我有問題,使用如果&其他

這是一個註冊表格後數據第3頁在PHP。爲此,我不能用$ _GET []

ex. else{header("location:agreement.php?email=somedata&pw=somedata");} 

是什麼辦法可以通過在PHP這些數據到第3頁?

第1頁

<form> 
    <input type="text" name="email"/> 
    (some input)... 

    <input type="button" onclick="get();"/> 
    </form> 



JQUERY 
function get(){ 
    $('#error').hide(); 
    $.post('signup.php',{firstname:signup.firstname.value,...}, 
    function(output){$('#error').html(output).fadeIn(50);}) 
    } 

第2頁

signup.php 
    if(will check everything){echo "error";} 
     //Jquery will output error without refresh the page 
    else{ 
     [Need to POST all sign up data from 1st page to 3rd page] 
     header("to agreement.php"); 
    } 

第3頁

agreement.php 
if user tick agree. All sign up data will insert into database. 

回答

1

你爲什麼不存儲在會話中的數據?然後,您可以輕鬆地在第3頁上對其進行檢索,而無需將其傳遞給客戶端,然後再將服務器傳遞迴客戶端。

+0

我的想法之前,使用會話,但像谷歌瀏覽器始終保存會話,甚至在瀏覽器關閉 –

+0

爲什麼是一個問題?如果您正確構建頁面,則重新訪問註冊頁面將覆蓋數據。 – KillerX

1

當您添加數據然後在一窗體添加數據到表,並在會話和所有其他形式的頁面使用RECORD_ID剛剛更新的數據庫記錄

1

儲存於會話,或者如果你表現出的網頁其存儲在你可以也可以使用CURL,但這是「很難」的方式。通過捲曲,您可以將POST所需的所有變量發送到其他頁面。

0

比如將email至3 PHP

function get(){ 
var email = $('#email').val(); 
    $('#error').hide(); 
    $.post('signup.php',{firstname:signup.firstname.value,email:email,...}, 
    function(output){$('#error').html(output).fadeIn(50);}) 
    } 

signup.php 
$email = $_GET['email']; 
    if(will check everything){echo "error";} 
     //Jquery will output error without refresh the page 
    else{ 
     [Need to POST all sign up data from 1st page to 3rd page] 
     header("to agreement.php?".$email); 

agreement.php 
$email = $_POST['email']; 
if user tick agree. All sign up data will insert into database. 
    }