레벨 올리는 함수인데요 레벨업이 안되는데요 왜그럴까요??

레벨 올리는 함수인데요 레벨업이 안되는데요 왜그럴까요??

QA

레벨 올리는 함수인데요 레벨업이 안되는데요 왜그럴까요??

답변 2

본문


function gainEXP( $gain ){
    session_start();
    $email=$_SESSION["ss_email"];
    $query = "select * from t1_members where email='$email' limit 1";
    $result = mysql_query ($query);
    $rows = mysql_fetch_array($result);
    
    $Exp += (int)$rows['exp'];
    $MaxExp = (int)$rows['maxExp'];
    $Remain = (int)$rows['remain'];
    $Exp += (int)$gain;
    if($Exp >= $MaxExp){
        $Remain = (int)$Exp - (int)$MaxExp;  //remain 1레벨 총량
        LevelUp($Remain);
    }
    
    $Remain += (int)$rows['exp'];
    //insert_point($member['mb_id'], -$sumpoint2, $content, $rel_table='', $rel_id='', $rel_action='', $expire=0);
    $sql = " update t1_members set exp='$Exp', maxExp='$MaxExp', remain='$Remain' where email='$email'";
    //exit;
    $row = mysql_query($sql);
    mysql_error();
    //die( "mysql connect error : " . mysql_error() );    
}

function LevelUp( $remainingEXP){
    session_start();
    $email=$_SESSION["ss_email"];
    $query = "select * from t1_members where email='$email' limit 1";
    $result = mysql_query ($query);
    $rows = mysql_fetch_array($result);
    
    $Exp = (int)$rows['exp'];
    $MaxExp = (int)$rows['maxExp'];
    $Remain = (int)$rows['remain'];
    $Level = (int)$rows['level'];
    
    $Exp = 0;
    $Exp += (int)$remainingEXP;
    $Level++;
    $MaxExp = 1.25 * (int)$MaxExp;
    $sql = " update t1_members set level ='$Level', exp='$Exp', maxExp='$MaxExp', remain='$Remain' where email='$email'";
    $row = mysql_query($sql);
    gainEXP(0);
    mysql_error();
}
 

 

레벨 올리는 함수인데요 레벨업이 안되는데요 왜그럴까요??

 

 

이 질문에 댓글 쓰기 :

답변 2

에러 메시지 출력이 없나요?

세션값을 이메일로 해서 sql조건절을 주신거 같은데..

세션값을 한번 확인해보시기 바랍니다. 세션에서 이메일이 정상적으로 set되었는지가 변수일듯 하네요.

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 75
© SIRSOFT
현재 페이지 제일 처음으로