세션(session) 유지 문제

세션(session) 유지 문제

QA

세션(session) 유지 문제

본문

안녕하세요~ 다름이 아니라 푸쉬관련해서 그누보드와 Firebase로 개발을 진행했는데요


앱에서->웹으로 토큰값을 전달하고

웹에서->db로 토큰값을 저장하는 대략적인 구조입니다.


그런데 회원아이디별로 푸쉬설정을 주기위해서 토큰값을 세션으로 주엇는데..이게...여기서 문제가 생기네요

토큰값을 세션으로 넣고 유지해야하는데...유지가 안되네요...


registToken.php

앱 ->웹 으로 올때 토큰값을 db에 저장해주는 부분 


<?php
include_once('../common.php');
//header('P3P: CP="NOI CURa ADMa DEVa TAIa OUR DELa BUS IND PHY ONL UNI COM NAV INT DEM PRE"');

 if(isset($_POST["Token"])){
  $token = $_POST["Token"];
        $_SESSION["dtkn"] = $token;
        //alert("토큰저장까지 들어옴");
  //데이터베이스에 접속해서 토큰을 저장
        //error_reporting(E_ALL); 
        //ini_set("display_errors", 1);
  include_once 'fcmConfig.php';
  $conn = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
  $query = "INSERT INTO fcm_tokens(tokens) Values ('$token') ON DUPLICATE KEY UPDATE tokens = '$token'; ";
  mysqli_query($conn, $query);
  mysqli_close($conn);
 }
//else{
//        alert("토큰저장 실패");
//    }
?>


위와같이 세션을 저장해서

아래에 login_check.php 에서 세션값을 처리해야하는데

세션이 유지가 안되는것 같네요...


login_check.php

에서 하단부분


//print_r($_SESSION);
if($_SESSION["dtkn"]) {
//    $sql= " update {$g5['member_table']} set m_tokens = '{$_SESSION['dtkn']}' where mb_id = '{$mb['mb_id']}' ";
//    sql_query($sql);
    sql_query("INSERT INTO fcm_tokens(tokens, mb_id) Values ('{$_SESSION['dtkn']}', '{$mb['mb_id']}') ON DUPLICATE KEY UPDATE Token = '{$_SESSION['dtkn']}', mb_id = '{$mb['mb_id']}'");
   // alert("세션저장 성공");
}
//else{
//    alert("세션토큰저장 실패");
//}


아래는 제가 생각하고있는 로직 입니다.

7c4954a157142defa63b883b156638af_1499255638_5259.jpg 

앱(웹뷰)을 실행하면 하나는 index.php라는 메인이 켜지고 다른 함수에서는 registToken.php로 토큰을 전달해줍니다.

여기서 registToken.php은 세션을 생성하구요

그 세션은 login_check.php 에 참조가 되어야 합니다..


어떻게하면 정상적으로 세션이 넘어오고 db에 저장이 될까요?

이 질문에 댓글 쓰기 :

답변 1

index.php 실행 이전에 registToken.php 를 먼저 실행시켜보는건 어떠신가요?


아니면 DB 에 insert 한 이후에 login_chk.php 부분에서 세션으로 조건을 주지마시고, DB 값으로 조건을 주시는건 어떠신가요?

답변을 작성하시기 전에 로그인 해주세요.
전체 131
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT