Sim Posted August 23, 2020 Posted August 23, 2020 I am trying to avoid creating a new IF statement and use a one time go-to statement. Which it just ignores.  <?php $start = microtime(); session_start(); if(count($_POST) > 0 && empty($_GET['action'])) { foreach($_SESSION['lastPage'] as $key => $val) { $_GET[$key] = $val; } print(var_dump($_GET));// . "<br><br><br><br>" . var_dump($_SESSION['lastPage']));//. "....") ;//var_dump($_POST)); } else{ $_SESSION['lastPage'] = $_GET;//$_SERVER["QUERY_STRING"]; } if (file_exists("install/")) { header("Location: install/"); exit; } require 'class/hooks.php'; include 'dbconn.php'; require "class/ItemHelperFunctions.php"; $helper = new ItemHelperFunctions(); require 'class/settings.php'; require 'class/template.php'; require 'class/templateRender.php'; require 'class/page.php'; require 'class/image.php'; require 'class/user.php'; require 'class/gang.php'; require 'class/property.php'; $settings = new settings(); $page->loadModuleMetaData(); if (!isset($_GET['page'])) { $_GET['page'] = $page->landingPage; //$_GET['page'] = "news"; } $pageToLoad = $_GET['page']; $exclude = array( "banned", "login", "logout", "forgotpassword", ); if (!empty($_SESSION['userID'])) { $user = new user($_SESSION['userID']); $user->updateTimer('laston', time()); $user->checkRank(); debug($user->info->US_charID); if($user->info->U_userLevel != 3 && !$user->info->US_charID ==0) { $page->loadPage("createCharacter"); goto quickCheat; } } debug("test"); if (!isset($page->modules[$pageToLoad])) { if (!empty($_SESSION['userID'])) { $user = new user($_SESSION['userID']); $user->updateTimer('laston', time()); $user->checkRank(); } $page->loadPage("pageNotFound"); } else { $jailPageCheck = $page->modules[$pageToLoad]; if (!empty($_SESSION['userID'])) { $user = new user($_SESSION['userID']); $user->updateTimer('laston', time()); $user->checkRank(); if ($_GET["page"] == "logout") { $page->loadPage('logout'); } else if ($user->info->U_status == 0) { $deadPage = "dead"; $hook = new Hook("deadPage"); $deadPage = $hook->run($deadPage, true); $page->loadPage($deadPage); } else if ($user->info->U_status == 2 && $jailPageCheck["requireLogin"]) { $page->loadPage('users'); } else if ($user->info->U_userLevel == 3) { $bannedPage = "banned"; $hook = new Hook("bannedPage"); $bannedPage = $hook->run($bannedPage, true); $page->loadPage($bannedPage); } else if (!$user->checkTimer('jail')) { if ($jailPageCheck["accessInJail"]) { $page->loadPage($pageToLoad); } else { $jailPage = "jail"; $hook = new Hook("jailPage"); $jailPage = $hook->run($jailPage, true); $page->loadPage($jailPage); } } else { $page->loadPage($pageToLoad); } } else if (!$jailPageCheck["requireLogin"]) { $page->loadPage($_GET['page']); } else { $page->loadPage("login"); } } quickCheat: $page->printPage(); $page->success = true; ?>   My go-to statement is the second if after the includes and the quick cheat: is almost at the bottom of the file. So not much searching is needed.  The problem is it ignores the go-to execution and proceeds instead of jumping to quick cheat maybe this is purposely done in php7, but I seen no documentation that girl is no longer supported. @Dave will love this post  The question should have been. The best and easiest way to load my create character page until a character was created. But I overlooked the simplicity of it. if($user->info->U_userLevel != 3 && $user->info->US_charID ==0) { $page->loadPage("createCharacter"); $page->printPage(); $page->success = true; exit(); } Edit #2: I still would love to know why the go-to statement did not work Quote
Dayo Posted August 24, 2020 Posted August 24, 2020 (edited) There should be a hook within init that you can use to alter what module to go to I’ve made a module for GL like this before and this was the hook. new hook("moduleLoad", function ($page) { global $user; if ($user) { if (!$user->info->US_setup) { return "createCharacter"; } } return $page; });  Edited August 24, 2020 by Dayo 1 Quote
Sim Posted August 24, 2020 Author Posted August 24, 2020 I forgot that hook existed. I rather use the hook then the code I posted. 🙂 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.