eternitysoft
Mitglied
Hallo Progge gerade an meiner Seite unteranderem ein usersystem mit admincenter
Klappt auch alles beim einloggen Sessin werden richtig gesetzt e.t.c
Und solange ich auf den dateien im hauptordner bleibe geht es aber
sobald ich ins admincenter gehe (extra ordner admincenter/datei) hat meine session admin den wert object id 1 bzw 2 ich hab aber keinen schimmer warum und ist auch nur bei der Session so oO
hier mal die wichtigesten datein
inc/function.php (aufs wichtige begrentzt)
Anmerkung:
function login überprüft ob ein user schon eingeloggt ist und ob die daten in den cookies stimmen wenn ja werden die session gesetzt und die function gruppe aufgerufen damit der user eine gruppe zugewiesen wird (hier wird die session admin gesetzt) login wird im header aufgerufen , gruppe dann endweder über login (beim neuen setzten) oder beim einloggen
und jetzt die admin dateien
admincenter/admin.php
admincenter/admin_footer.php
admincenter/admin_header.php
admincenter/admin_navi.php
admincenter/teplates/admin.tpl
und die vars.php
tpl parser ist Smarty
hoffe ihr könnt mir weiterhelfen
mfg
et
Klappt auch alles beim einloggen Sessin werden richtig gesetzt e.t.c
Und solange ich auf den dateien im hauptordner bleibe geht es aber
sobald ich ins admincenter gehe (extra ordner admincenter/datei) hat meine session admin den wert object id 1 bzw 2 ich hab aber keinen schimmer warum und ist auch nur bei der Session so oO
hier mal die wichtigesten datein
inc/function.php (aufs wichtige begrentzt)
PHP:
<?php
//
//##############################
// function login
//##############################
//
function login()
{
if ((isset($_COOKIE["username"]))&&(isset($_COOKIE["pw"])) && ($_SESSION["eingeloggt"] != 1))
{
$username=$_COOKIE["username"];
$sql=mysql_query("select * from hp_user where username='$username'");
while($row = mysql_fetch_array($sql))
{
$id = $row['id'];
$user = $row['username'];
$email = $row['email'];
$pw2 = $row['password'];
$_SESSION["eingeloggt"] = 1;
//echo $id;
}
$pw =$_COOKIE["pw"];
if ($pw == $pw2)
{
gruppe($id);
}
else
{
$_SESSION['forum_gruppe'] = "Gast";
$forum_gruppe = $_SESSION['gruppe'];
$result= mysql_query("
SELECT
*
FROM
hp_forum_groups
WHERE
name = '".$gruppe."'
");
while($row = mysql_fetch_array($result))
{
$_SESSION['forum_gruppe_id'] =$row['id'];
}
mysql_free_result($result);
}//abfrage ob pw im cookie stimmt
}//abfrage ob session und cookies existieren
else
{
$_SESSION['forum_gruppe'] = "Gast";
$gruppe="a";
$result= mysql_query("
SELECT
*
FROM
hp_forum_groups
WHERE
groupname = '".$gruppe."'
");
while($row = mysql_fetch_array($result))
{
$_SESSION['forum_gruppe_id'] =$row['id'];
}
}
}
//
//##############################
// function login ende
//##############################
//
//
//##############################
// function gruppe
//##############################
//
function gruppe($user_id)
{
$result= mysql_query("
SELECT
*
FROM
hp_group_users
WHERE
uid = '".$user_id."'
ORDER BY
prio DESC
");
while ($row = mysql_fetch_array($result))
{
$gid =$row['gid'];
$result_gruppe= mysql_query("
SELECT
*
FROM
hp_groups
WHERE
id = '".$gid."'
");
while($row_gruppe = mysql_fetch_array($result_gruppe))
{
$_SESSION['groupcolor'] = $row_gruppe['color'];
if($groups =='')
{
$groups = $row_gruppe['groupname'];
}else{
$groups + " ,".$row_gruppe['groupname'];
}
}
$result_gruppenrechte= mysql_query("
SELECT
*
FROM
hp_group_rights
WHERE
gid = '".$gid."'
");
while ($row_gruppenrechte = mysql_fetch_array($result_gruppenrechte))
{
if($adminrights == 0 or $adminrights =="" )
$adminrights = $row_gruppenrechte['admin'];
}
}
$_SESSION['admin'] = $adminrights;
$_SESSION['groups'] = $groups;
}
//
//##############################
// function gruppe ende
//##############################
//
?>
function login überprüft ob ein user schon eingeloggt ist und ob die daten in den cookies stimmen wenn ja werden die session gesetzt und die function gruppe aufgerufen damit der user eine gruppe zugewiesen wird (hier wird die session admin gesetzt) login wird im header aufgerufen , gruppe dann endweder über login (beim neuen setzten) oder beim einloggen
und jetzt die admin dateien
admincenter/admin.php
PHP:
<?php
ob_start();
session_start ();
require_once ('../inc/function.php');
require_once('../vars.php');
$admin = $_SESSION['admin'];
if ($_SESSION['admin'] == 1)
{
}
else
{
$fehlermeldung = "Sie haben keine Adminrechte";
}
$admin = new Smarty;
require_once('../inc/smarty_admin.php');
$admin->assign('fehlermeldung',$fehlermeldung);
$admin->display('admin.tpl');
flush();
ob_end_flush() ;
?>
admincenter/admin_footer.php
PHP:
<?php
require_once ('../inc/function.php');
require_once('../vars.php');
$timestamp = time();
$datum=date("Y",$timestamp);
$footer = new Smarty;
require_once('../inc/smarty_admin.php');
$footer->assign('datum',$datum);
$footer->display('admin_footer.tpl');
?>
PHP:
<?php
ob_start();
session_start ();
require_once ('../inc/function.php');
require_once('../vars.php');
$logout=$_GET['logout'];
if ($logout =="false" or $logout=="")
{
login();
}
$header = new Smarty;
require_once('../inc/smarty_admin.php');
$header->display('admin_header.tpl');
flush();
ob_end_flush() ;
?>
admincenter/admin_navi.php
PHP:
<?php
ob_start();
session_start ();
require_once ('../inc/function.php');
require_once('../vars.php');
$admin = $_SESSION['admin'];
$rights_user = $_SESSION['right_user'];
$rights_user_create =$_SESSION['right_user_create'];
$rights_user_edit =$_SESSION['right_user_edit'];
$rights_user_delete =$_SESSION['right_user_delete'];
$rights_user_bannlist =$_SESSION['right_user_bannlist'];
$navi_l = new Smarty;
require_once('../inc/smarty_admin.php');
$navi_l->assign('admin',$admin);
$navi_l->assign('user',$rights_user);
$navi_l->assign('rights_user_create',$rights_user_create);
$navi_l->assign('rights_user_edit',$rights_user_edit);
$navi_l->assign('rights_user_delete',$rights_user_delete);
$navi_l->assign('rights_user_delete',$rights_user_bannlist);
$navi_l->display('admin_navi.tpl');
flush();
ob_end_flush() ;
?>
admincenter/teplates/admin.tpl
HTML:
{include_php file="admin_header.php"}
<tr align="center">
<td align="left" valign="top" class="text" bgcolor="#687E9A"><br>
{include_php file="admin_navi.php"}
</td>
<td align="center" valign="top" class="text" bgcolor="#687E9A"><br>
<!-- MITTE -->
<!-- NEWS BOX-->
<table align="center" border="0" cellspacing="0" cellpadding="0" style="border: 1px solid #000000;">
<tr>
<td class="text" align="center" height="18" width="450" style="background-image: url(../images/cellpic.gif); border-bottom: #000000 1px solid;">
<b>Adminpanel</b>
</td>
</tr>
<tr>
<td class="text" align="left" height="18" width="400" bgcolor="#5c6679" style=" padding-left:175px; padding-top:10px; padding-bottom:10px;">
{if $fehlermeldung !=''}
{$fehlermeldung}
{else}
{/if}
</td>
</tr>
</table>
<br>
<!-- ende MITTE -->
{include_php file="admin_footer.php"}
und die vars.php
PHP:
<?php
$dbhost = ""; //datenbankhost meinstens localhost
$dbuser =""; //dbusername
$dbpw =""; //dbpasswort
$dbname =""; //datenbankname
//------------------------------------------------------------------------------------------------------
$news_pro= "4"; //Wieviele News sollen pro seite angezeigt werden?
$news_head_number= "5"; //Wieviele News Headlines sollen ausgegeben werden?
$download_stats_top = "5"; //Wieviele Top Downloads sollen ausgegeben werden?
$berichte_head_number= "5"; //Wieviele Berichte Headline sollen ausgegeben werden?
#############################
#### ####
#### Hier nichts mehr ändern ####
#### ####
#############################
$admincenter = $_GET['ac'];
if ($admincenter !="true")
{
define('SMARTY_DIR', 'smarty/');
}else{
define('SMARTY_DIR', '../smarty/');
}
require_once(SMARTY_DIR.'Smarty.class.php');
$db = new db();
$db->mysqlconnect($dbhost, $dbuser, $dbpw, $dbname);
?>
tpl parser ist Smarty
hoffe ihr könnt mir weiterhelfen
mfg
et