[英]Do I really have to reload my page twice?
我目前正在從事一個項目,包括 Facebook SDK。 我已經使用 javascript 代碼自己登錄/注銷了。
我正在使用 AJAX POST 請求來保存用戶 ID 和會話中響應中的名稱。
這里的問題是,我實際上必須重新加載頁面兩次,第一次是獲取 POST 參數並將它們保存到 $_SESSION 中。 加載會話需要第二次刷新。
有沒有干凈的方法來避免這種情況?
javascript: $.post( "login.php", { id:userID, name:response.name } );
login.php: $_SESSION['name'] = $_POST['name'];
$_SESSION['userID'] = $_POST['id'];
我感謝每一種幫助。 謝謝。
編輯:我想在我的網站上為使用 facebook 登錄的用戶提供額外的機會。 我知道如何做到這一點的唯一方法是使用 PHP 中的會話。 每當他登錄時,我都會創建一個會話,該會話表示一個人已登錄。
現在我必須對 facebook 登錄做同樣的事情。 它已經在本地與 PHP SDK 一起工作了,但是網站空間不支持那種 SDK。 這就是為什么我必須避開 javascript 的原因。 有沒有其他方法可以確保一個人被記錄?
您正在使用 AJAX,
所以你可以避免重新加載頁面,
<?php
session_start();
if (isset($_GET['name'])) {$_SESSION['name'] = $_GET['name'];}
if (isset($_GET['userID'])) {$_SESSION['userID'] = $_GET['userID'];}
if(isset ($_POST['name'] ) && isset ($_POST['userID'])){
$_SESSION['name']= $_POST['name'];
$_SESSION['userID']= $_POST['userID'];
}else{
$_SESSION['userID'] = 0;
}
?>
和 javascript 代碼是:
$.post( "/login.php", { id:userID, name:response.name } );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.