Aktualnie zrobiłem coś takiego...
Główny plik, z którego pobierane są wszystkie funkcje...
Kod
function maxsysop () {
// Sprawdz czy istnieja sesje jezeli tak to przejdz dalej
if(isset($_SESSION['code'])) {
require "include/piny.php";
// Sprawdz czy haslo dla danej rangi jest poprawne jezeli tak wyswietl strone
if($_SESSION['code'] == $sysop_code && $user['class'] == UC_SYSOP ||
$_SESSION['code'] == $semi_sysop_code && $user['class'] == UC_SEMI_SYSOP ||
$_SESSION['code'] == $administrator_code && $user['class'] == UC_ADMINISTRATOR ||
$_SESSION['code'] == $moderator_code && $user['class'] == UC_MODERATOR)
header('Location: panel.php');
else
header('Location: sprpin.php');
}
else {
header('Location: sprpin.php');
}
}
// Sprawdz czy istnieja sesje jezeli tak to przejdz dalej
if(isset($_SESSION['code'])) {
require "include/piny.php";
// Sprawdz czy haslo dla danej rangi jest poprawne jezeli tak wyswietl strone
if($_SESSION['code'] == $sysop_code && $user['class'] == UC_SYSOP ||
$_SESSION['code'] == $semi_sysop_code && $user['class'] == UC_SEMI_SYSOP ||
$_SESSION['code'] == $administrator_code && $user['class'] == UC_ADMINISTRATOR ||
$_SESSION['code'] == $moderator_code && $user['class'] == UC_MODERATOR)
header('Location: panel.php');
else
header('Location: sprpin.php');
}
else {
header('Location: sprpin.php');
}
}
Plik sprpin.php
Kod
<?php
require "include/bittorrent.php";
dbconn();
loggedinorreturn();
noaccess("spr.php", UC_VIP);
if (get_user_class() < UC_MODERATOR)
stderr('Błąd', 'brak dostępu!');
stdhead("Sprawdzanie PINu");
$res = mysql_query("SELECT username FROM users WHERE id=" . $CURUSER['id'] . "") or sqlerr(__FILE__, __LINE__);
$user = mysql_fetch_assoc($res);
print("<table border=1 cellspacing=0 cellpadding=5>");
print("<tr>");
print("<td class='colhead'>");
print("<p align='center'>Wpisz swój PIN <a href='userdetails.php?id=" . $CURUSER['id'] . "'>" . $user['username'] . "</a></p>");
print("</td>");
print("</tr>");
print("<tr>");
print("<td>");
print("<form action='sprpin.php' method='post'>");
print("<p align='center'><input name='code' type='text' size='5'></p>");
print("<p align='center'><input name='start' type='submit' value='Zatwierdź wprowadzony kod'></p>");
print("</form>");
print("</td>");
print("</tr>");
print("</table>");
stdfoot();
if($_POST["start"]) {
session_start();
$_SESSION['code'] = $_POST['code'];
header('Location: panel.php');
}
?>
require "include/bittorrent.php";
dbconn();
loggedinorreturn();
noaccess("spr.php", UC_VIP);
if (get_user_class() < UC_MODERATOR)
stderr('Błąd', 'brak dostępu!');
stdhead("Sprawdzanie PINu");
$res = mysql_query("SELECT username FROM users WHERE id=" . $CURUSER['id'] . "") or sqlerr(__FILE__, __LINE__);
$user = mysql_fetch_assoc($res);
print("<table border=1 cellspacing=0 cellpadding=5>");
print("<tr>");
print("<td class='colhead'>");
print("<p align='center'>Wpisz swój PIN <a href='userdetails.php?id=" . $CURUSER['id'] . "'>" . $user['username'] . "</a></p>");
print("</td>");
print("</tr>");
print("<tr>");
print("<td>");
print("<form action='sprpin.php' method='post'>");
print("<p align='center'><input name='code' type='text' size='5'></p>");
print("<p align='center'><input name='start' type='submit' value='Zatwierdź wprowadzony kod'></p>");
print("</form>");
print("</td>");
print("</tr>");
print("</table>");
stdfoot();
if($_POST["start"]) {
session_start();
$_SESSION['code'] = $_POST['code'];
header('Location: panel.php');
}
?>
No i include/piny.php dla czystej formalności, z przykładowymi hasłami...
Kod
<?
$sysop_code = '444';
$semi_sysop_code = '333';
$administrator_code = '222';
$moderator_code = '111';
?>
$sysop_code = '444';
$semi_sysop_code = '333';
$administrator_code = '222';
$moderator_code = '111';
?>
Widzicie gdzieś na starcie błąd? Grzebie się z tym już jakiś czas i nie działa tam gdzie jest funkcja maxsysop(); w pliku wywołany to zawsze się wyświetla plik nawet jak sesja nie istnieje :/