嗨我想通過會話讓用戶登錄,這裏是我的代碼之前工作現在它不是我甚至沒有更改代碼。試圖通過PHP登錄不工作腳本
profile.php(顯示登錄後)
<?php
ob_start();
session_start();
$userName = $_SESSION['username'];
$userid = $_SESSION['userid'];
if(isset($_GET['session'])) {
$currentSessionID = $_GET['session'];
$currentSessionID = md5(md5(md5($currentSessionID)));
session_id($currentSessionID);
header("Location:profile.php");
return;
}
if(!isset($userName)){
echo "OUT";
return;
}
...
腳本/ signin.php
ob_start();
session_start();
include"config.php";
echo "here";
// check for required fields
if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['Username']) && isset($_POST['Password'])) {
$user = mysql_real_escape_string($_POST['Username']);
$pass = mysql_real_escape_string($_POST['Password']);
$decrypt = md5(md5(md5($pass)));
$ensure = "select * from userinfo WHERE Username = '$user' and Password='$decrypt' and status='1'";
$result= mysql_query($ensure);
if(mysql_num_rows($result) > 0) {
echo "here2";
$entry = mysql_fetch_array($result) or die(mysql_error());
$_SESSION['username'] = $entry['Username'];
echo $entry['Username'];
$_SESSION['userid'] = $entry['Id'];
$currentSessionID = session_id();
$currentSessionID = md5(md5(md5($currentSessionID)));
header("Location: http://www.myprocity.com/profile.php?session=".$currentSessionID);
echo "here3";
爲什麼IM傳遞會話ID,是因爲我嘗試只保留標誌的原因在註冊HTTPS,而其他網頁的HTTP,所以我可以展示Google廣告,有誰知道如何實現這個沒有安全問題(完美)
它總是去OUT,即使$ _SESSIO N是我的用戶名(數據庫正確)
回聲'$ userName'它可能被正確設置/存儲 –
什麼不工作?你有什麼嘗試? – BenLanc
你確定你沒有把'die();'改成'return;'嗎? 'return'用於功能內部。 – PHPglue