search

Home  >  Q&A  >  body text

How can I access the page directly without logging in, or how can I remove the login function?

<?php

/**

* Front page base class

*/

class WebLoginBase extends WebBase{

public $type;

public $ groupId;

public $played;

public $NO;

public $gameFanDian;

function __construct($dsn, $user='', $password=''){

session_start();

if(!$_SESSION[$this->memberSessionName]){

header('location: /user/logout');

exit('You are not logged in');

}

try{

parent::__construct($dsn, $user, $password);

//$this->gameFanDian=$this->getValue("select fanDian from {$this->prename}members where uid=?", $GLOBALS['SUPER-ADMIN-UID']);

// Limit the same user to only log in in one place

if(!$this->getValue("select isOnLine from ssc_member_session where uid={$this->user['uid']} and session_key=? order by id desc limit 1", session_id()) ){

session_unset();

session_destroy();

header('location: /user/logout');

exit('You Already logged out, please log in again');

}

/*$session_key=$this->getValue("select session_key from ssc_member_session where uid={$this->user ['uid']} and isOnLine=1 order by id desc limit 1");

if($session_key != session_id()){

header('location: /user/ logout');

exit('You have logged out, please log in again');

}*/

}catch(Exception $ e){

}

}

public function freshSession(){

if(!$this->user ) return false;

$sessionId=$this->user['sessionId'];

if($this->user['testFlag']==1){

$sql="select * from {$this->prename}guestmembers where uid=?";

}else{

$sql="select * from { $this->prename}members where uid=?";

}

$user=$this->getRow($sql, $this->user['uid' ]);

$user['sessionId']=$sessionId;

$user['_gameFanDian']=$this->getGameFanDian();

$ _SESSION[$this->memberSessionName]=serialize($user);

$this->user=$user;

return true;

}

public function getGameFanDian(){

if($this->gameFanDian) return $this->gameFanDian;

$this-> getSystemSettings();

return $this->gameFanDian=$this->settings['fanDianMax'];

}

## public function getSystemSettings($expire=null){

if($expire===null) $expire=$this->expire;

$file=$this->cacheDir . 'systemSettings';

if($expire && is_file($file) && filemtime($file) $expire>$this->time){

return $this->settings =unserialize(file_get_contents($file));

}

$sql="select * from {$this->prename}params";

$this->settings=array() ;

if($data=$this->getRows($sql)){

foreach($data as $var){

$this-> settings[$var['name']]=$var['value'];

}

}

file_put_contents($file, serialize($this-> ;settings));

return $this->settings;

}

public function getSystemCache($cacheFile,$getvalue='',$expire=null){

if($expire < 30) $expire=$this->expire;

$ abbl=$cacheFile=='staticdata/gamedatas.php';

$file=$abbl?$this->cacheDir.'/partNameList.dump':($this->cacheDir. '/ systemplayed'.$getvalue.'_'.md5($cacheFile));

//The cache file exists and is no more than 10 hours old, use it directly The cached result set no longer performs any MySQL queries

if($expire && is_file($file) && time()-filemtime($file) < $expire) {

//Use the results in the cache

if($abbl){

$parts=file_get_contents($this->cacheDir.'/partNameList.dump');

$cached='';

foreach(json_decode($parts,1) as $part){

$cached.=file_get_contents ($part).';';

}

echo $cached;

}else{

echo file_get_contents($file);

}

}else{

//Cache the result set

ob_start();

$this ->display($cacheFile);

$ob=ob_get_contents();

if($abbl){

$obs=explode(';',$ob);

array_pop($obs);

$partNameList=array( );

foreach($obs as $cached){

$part=explode('=',str_replace('var','',$cached) );

$partNameList[]=$this->cacheDir.'/'.trim($part[0]);

file_put_contents(end($partNameList),$cached);

}

file_put_contents($this->cacheDir.'/partNameList.dump',json_encode( $partNameList));

}else{

file_put_contents($file,$ob);

}

ob_end_flush();

}

}

/* public function delete_file($str){

$dir=$this->cacheDir;

$list = scandir($dir); // Get all files and folders under the file

foreach($list as $file){//Traverse

$ file_location=$dir."/".$file;//Generate path

if(is_dir($file_location) && $file!="." &&$file!=".."){ // Determine whether it is a folder

//echo "------------------------sign in $file_location------- -----------";

//delete_file($file_location); //Continue traversing

}else if($file!="."&&$file!=".."){

if(substr_count($file,$str)>0){//If file The name contains the string

unlink($dir."/".$file);

}

}

}

}

public function setcachefile($cacheFile, $getvalue){

$file=$this->cacheDir. '/'.md5($getvalue.$cacheFile);

$actionTime=$this->getGameCachetime($getvalue);

$cachefiletime=strtotime($actionTime);

$file=$file.'_'.$ cachefiletime;

if(is_file($file)) {

echo file_get_contents($file);

}else{

//Delete expired cache

$this->delete_file(md5($getvalue.$cacheFile));

//Cache the result set

ob_start();

$this->display($cacheFile);

file_put_contents($file,ob_get_contents());

ob_end_flush();

}

}*/

## /**

* Changes in user funds

*

* Please use

in a transaction*/

public function addCoin($log){

if(!isset($log['uid'])) $log['uid']=$this->user['uid'];

if(!isset($log['info '])) $log['info']='';

if(!isset($log['coin'])) $log['coin']=0;

if(!isset($log['type'])) $log['type']=0;

if(!isset($log['fcoin'])) $log['fcoin ']=0;

if(!isset($log['extfield0'])) $log['extfield0']=0;

if(!isset($log[' extfield1'])) $log['extfield1']='';

if(!isset($log['extfield2'])) $log['extfield2']='';

$sql="call setCoin({$log['coin']}, {$log['fcoin']}, {$log['uid']}, {$log[ 'liqType']}, {$log['type']}, '{$log['info']}', {$log['extfield0']}, '{$log['extfield1']}', '{$log['extfield2']}')";

//echo $sql;exit;

$this->insert($sql) ;

}

public function guestaddCoin($log){

if(!isset($log['uid'])) $log ['uid']=$this->user['uid'];

if(!isset($log['info'])) $log['info']='';

if(!isset($log['coin'])) $log['coin']=0;

if(!isset($log['type'])) $ log['type']=0;

if(!isset($log['fcoin'])) $log['fcoin']=0;

if(!isset( $log['extfield0'])) $log['extfield0']=0;

if(!isset($log['extfield1'])) $log['extfield1']='';

if(!isset($log['extfield2'])) $log['extfield2']='';

$sql="call guestsetCoin({$log['coin']}, {$log['fcoin']}, {$log['uid']}, {$log['liqType']}, {$log['type']}, '{$log['info']}', {$log['extfield0']}, '{$log['extfield1']}', '{$log['extfield2']}')";

//echo $sql;exit;

$this->insert($sql);

}

/**

* Read available rebates

*/

public function getFanDian($uid=null){

if($uid===null){

if(!$uid=$this->user['parentId']){

return $this->params['basePl'];

}

}

return $this->getValue("select fanDian from {$this->prename}members where parentId=?", intval($uid));

}

}

KeeviKeevi1363 days ago2176

reply all(1)I'll reply

  • 查无此人

    查无此人2021-03-15 09:51:34

    Direct access without logging in will be unsafe.

    Do you want to allow everyone to enter without logging in, or do you want to do it only for yourself without logging in?

    Let me give you an idea:

    1. If no one logs in, just remove the user judgment.

    2. There are two ways to prevent you from logging in:

                    1. If your IP address is fixed, you can judge that the ip address is your address and enter directly.

    2. You can make a page specifically, use it yourself, enter this page, and automatically log in to enter.

    reply
    0
  • Cancelreply