2012-07-02 60 views
0

註冊頁面:我的會議將無法正常工作

$_SESSION['namex']=$_POST['username']; 
$_SESSION['passx']=$_POST['pass']; 
$_SESSION['confirmpassx']=$_POST['confirmpass']; 
$_SESSION['emailx']=$_POST['email']; 
$_SESSION['confirmemailx']=$_POST['email2']; 
$_SESSION['keyx']=$_POST['byond']; 

索引頁

$namex=$_POST['username']; 
$passx=$_POST['pass']; 
$pass2x=$_POST['confirmpass']; 
$emailx=$_POST['email']; 
$email2x=$_POST['email2']; 
$ByondKeyx=$_POST['byond']; 
str_replace($namex,$_SESSION['namex'],$namex); 
str_replace($passx,$_SESSION['passx'],$passx); 
str_replace($pass2x,$_SESSION['confirmpassx'],$pass2x); 
str_replace($emailx,$_SESSION['emailx'],$emailx); 
str_replace($email2x,$_SESSION['confirmemailx'],$email2x); 
str_replace($keyx,$_SESSION['keyx'],$keyx); 

好了,還等什麼,這些代碼都應該做的是註冊頁面做的事(我想)而索引頁面是一個頁面,如果某些內容出現錯誤(如用戶名或密碼或用戶名爲invaild),則索引頁面將進入,並形成與註冊頁面具有相同數據的另一表單。對不起,如果很難閱讀/理解。如果你想看到我的網站,看看我的意思,那麼這裏的鏈接:http://snyp.freeoda.com 感謝您的閱讀和請幫助。

+2

'str_replace()'返回被替換的字符串,它不會改變它的位置。你需要返回像'$ keyx = str_replace($ keyx,$ _SESSION ['keyx'],$ keyx);' –

+0

你的問題是什麼?另外,這個代碼中還有很多問題。首先,你不需要手動每個POST var到一個SESSION var - 你可以在循環中做到這一點。另一方面,你的'str_replace'語句不能分配給任何東西,所以它們實際上什麼都不做。 – Utkanos

+0

'str_replace($ namex,$ _ SESSION ['namex'],$ namex)'與'$ _SESSION ['namex']'相同......你應該把它分配給某個東西。 –

回答

1

session_start()添加到每個文件的頂部 並在每個str_replace調用前添加$_SESSION['varname']。 (或任何你想分配的東西,不知道)

+0

對不起,應該在頁面中添加,但我已經做了。 – Mitch

1

你有代碼的一開始session_start();函數調用嗎?
注意:在它之前不允許換行符,空格。

0

首先,這個回答假設你在這兩個腳本的頂部有session_start()並且當顯示的頁面沒有錯誤/警告可見(使用error_reporting(-1)ini_set('display_errors', 'On')

你的註冊頁面商店內張貼的領域會議:

$_SESSION['namex']=$_POST['username']; 

這是所有罰款,讓我們假設你重定向回索引頁面,然後索引頁可以直接從會議採取值:

假設索引頁上的表單使用$namex來構建表單。