Willkommen in der Webstatt Zum Webstatt Blog und Stories
fish fish am 14.06.06 12:48

wie sollte ein guter administrationsbereich einer webseite aussehen.. hier habe ich mal meinen gepostet, wie kann man das übersichtlicher gestalten, was fehlt an komfortfunktionen?

netcup.de Warum gibt es hier Werbung?
F4n4T!C F4n4T!C am 14.06.06 12:58

Was ich persönlich gern haben würde wäre ein kleiner Log, der mir immer zeigt was ich zuletzt!!!

milahu milahu am 14.06.06 13:00

Am besten finde ich, wenn es überhaupt keinen abgegrenzten Admin Bereich zur Verwaltung
vom Inhalt gibt -- Den sollte man auf der Stelle bearbeiten können (nach einem Login natürlich),
wie man das zB. vom Mediawiki her kennt. :)

Was mir noch aufgefallen is: Du loggst Referer innerhalb deiner Seite? Strange.. ;)

fish fish am 14.06.06 13:06

ich weiss nicht wie ich die ausschliessen kann

und ausserdem weiss ich null darüber wie man einen login baut

F4n4T!C F4n4T!C am 14.06.06 13:11

Quote
Original von fish
ich weiss nicht wie ich die ausschliessen kann

und ausserdem weiss ich null darüber wie man einen login baut


Na das wird ja wohl nun mehr als oft schön im netz erklärt!

Dustwolf Dustwolf am 14.06.06 13:22

Du kriegst kein Login hin, aber nen Administrationspanel???

fish fish am 14.06.06 13:45

ja. so ist es. habe bis jetzt noch keine erklärung gefunden, die ich verstanden habe bzw die funktioniert hat.

aber sonst, was kann man da noch machen?

BNightSpeeder am 14.06.06 14:43

Ich habe doch mal einen hier reingestellt, und gefragt, hier ma meiner:

MySQL Zugang muss noch eingetragen werden, in die Datenbank muss es so sein:

user ||| Benutzername: md5 verschlüsselt
pass |||Passwort: =
name|||Name: Name zur begrüsung!

Tabelle "admin"

--------------------------

Du musst natürlich noch alle Anpassen wie du es willst!

<?php ob_start(); ?>
<?php include("../function.ini.php"); ?>
<?php include("../config.ini.php"); ?>
<?php
$zufall_sess_id_rand = rand("1","" . date("jzHshnY") . "");
$zufall_sess_id_cookie_rand = rand("1","" . date("YszhHjn") . "");
$zufall_sess_id = md5($zufall_sess_id_rand);
$zufall_sess_id_cookie = md5($zufall_sess_id_cookie_rand);

if (isset($_POST['send'])) {

$abfrage = mysql_query("SELECT * FROM admin");
$row = mysql_fetch_object($abfrage);
$userfm = md5($_POST['user']);
$userdb = $row->user;
$passworddb = $row->password;
$passwordfm = md5($_POST['pass']);

if ($passwordfm == $passworddb AND $userfm == $userdb) { // Wenn richtige angaben wird das ausgeführt!

/* Session in datenbank schreiben */

mysql_query("UPDATE `admin` SET `sessid` = '$zufall_sess_id', `ip` = '".$_SERVER['REMOTE_ADDR']."', `time` = '" . time() . "' WHERE `id` = '".$row->id."'") or die(mysql_error());


/* Session in datenbank schreiben ENDE */
?>

<br>
<div align="center"><img src="../images/admin/index.jpg"></div><br><br><br><br>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table align="center" width="682" border="0" cellpadding="0" cellspacing="0">
<tr>
<td id="oben_links"></td>
<td id="oben_mitte"></td>
<td id="oben_rechts"></td>
</tr>
<tr>
<td id="mitte_links"></td>
<td id="mitte_mitte"><h2 align="center">Login erfolgreich </h2><br>
<p align="center">Herzlich Willkommen, <?php echo $row->name ?></p></td>
<td id="mitte_rechts"></td>
</tr>
<tr>
<td id="unten_links"></td>
<td id="unten_mitte"></td>
<td id="unten_rechts"></td>
</tr>
</table><?
// Weiterleiten

header('Location: page.php?sess=' . $zufall_sess_id . '&id='.$row->id.'');
exit();
// Weiterleiten ENDE
}
else {
/* Falsche Angaben */
?>
<br>
<div align="center"><img src="../images/admin/index.jpg"></div><br><br><br><br>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table align="center" width="682" border="0" cellpadding="0" cellspacing="0">
<tr>
<td id="oben_links"></td>
<td id="oben_mitte"></td>
<td id="oben_rechts"></td>
</tr>
<tr>
<td id="mitte_links"></td>
<td id="mitte_mitte"><h2 align="center">Login</h2>
<table width="100%" border="0">
<tr>
<td>Benutzername:</td>
<td><input name="user" type="text"></td>
</tr>
<tr>
<td>Passwort:</td>
<td><input name="pass" type="password"></td>
</tr>
<tr>
<td> </td>
<td><input name="send" type="submit" value="Login"></td>
</tr>
</table><p align="center"><b>Fehler:</b> Die Zugangsdaten sind nicht korrekt!</p></td>
<td id="mitte_rechts"></td>
</tr>
<tr>
<td id="unten_links"></td>
<td id="unten_mitte"></td>
<td id="unten_rechts"></td>
</tr>
</table></form>
<?
}
}

else {
/* Enter Screen */
?><br>
<div align="center"><img src="../images/admin/index.jpg"></div><br><br><br><br>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table align="center" width="682" border="0" cellpadding="0" cellspacing="0">
<tr>
<td id="oben_links"></td>
<td id="oben_mitte"></td>
<td id="oben_rechts"></td>
</tr>
<tr>
<td id="mitte_links"></td>
<td id="mitte_mitte"><h2 align="center">Login</h2>
<table width="100%" border="0">
<tr>
<td>Benutzername:</td>
<td><input name="user" type="text"></td>
</tr>
<tr>
<td>Passwort:</td>
<td><input name="pass" type="password"></td>
</tr>
<tr>
<td> </td>
<td><input name="send" type="submit" value="Login"></td>
</tr>
</table><p align="center"> </p></td>
<td id="mitte_rechts"></td>
</tr>
<tr>
<td id="unten_links"></td>
<td id="unten_mitte"></td>
<td id="unten_rechts"></td>
</tr>
</table></form>
<?
}
?>
<title>Administration | Login</title>


Mfg. BNS

fish fish am 14.06.06 16:36

wie wärs mit screeenshot?

BNightSpeeder am 14.06.06 16:51

Hier, wie gesagt musst du noch anpassen, ach hier ist ne neue Version die durch Cookies wiedererkennt, der Cookie ist 45 Minuten lang gültig, und wird beim Logout gelöscht:

login.php
<?php ob_start(); ?>
<?php include("../function.ini.php"); ?>
<?php include("../config.ini.php"); ?>
<?php
$zufall_sess_id_rand = rand("1","" . date("jzHshnY") . "");
$zufall_sess_id_cookie_rand = rand("1","" . date("YszhHjn") . "");
$zufall_sess_id = md5($zufall_sess_id_rand);
$zufall_sess_id_cookie = md5($zufall_sess_id_cookie_rand);

if (isset($_POST['send']) || isset($_COOKIE['adminsess'])) {

$abfrage = mysql_query("SELECT * FROM admin");
$row = mysql_fetch_object($abfrage);
$userfm = md5($_POST['user']);
$userdb = $row->user;
$sessid = $row->sessid;
$log = $row->login;
$passworddb = $row->password;
$passwordfm = md5($_POST['pass']);

if ($log == $_POST['login'] || $log == "login") {
header('Location: page.php?sess=' . $row->sessid . '&id='.$row->id.'');
exit();
}

elseif ($passwordfm == $passworddb AND $userfm == $userdb) { // Wenn richtige angaben wird das ausgeführt!
/* Variablen */
setcookie("adminsess","yes",time()+60*45);

/* Variablen ENDE */
/* Session in datenbank schreiben */

mysql_query("UPDATE `admin` SET `login` = '".$login."',`sessid` = '$zufall_sess_id', `ip` = '".$_SERVER['REMOTE_ADDR']."', `time` = '" . time() . "' WHERE `id` = '".$row->id."'") or die(mysql_error());


/* Session in datenbank schreiben ENDE */
// Weiterleiten

header('Location: page.php?sess=' . $zufall_sess_id . '&id='.$row->id.'');
exit();
// Weiterleiten ENDE
}
else {
/* Falsche Angaben */
?>
<br>
<div align="center"><img src="../images/admin/index.jpg"></div><br><br><br><br>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table align="center" width="682" border="0" cellpadding="0" cellspacing="0">
<tr>
<td id="oben_links"></td>
<td id="oben_mitte"></td>
<td id="oben_rechts"></td>
</tr>
<tr>
<td id="mitte_links"></td>
<td id="mitte_mitte"><h2 align="center">Login</h2>
<table width="100%" border="0">
<tr>
<td>Benutzername:</td>
<td><input name="user" type="text"></td>
</tr>
<tr>
<td>Passwort:</td>
<td><input name="pass" type="password"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input name="send" type="submit" value="Login"></td>
</tr>
</table><p align="center"><b>Fehler:</b> Die Zugangsdaten sind nicht korrekt!</p></td>
<td id="mitte_rechts"></td>
</tr>
<tr>
<td id="unten_links"></td>
<td id="unten_mitte"></td>
<td id="unten_rechts"></td>
</tr>
</table><input name="login" type="hidden" value="login"></form>
<?
}
}

else {
/* Enter Screen */
?><br>
<div align="center"><img src="../images/admin/index.jpg"></div><br><br><br><br>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table align="center" width="682" border="0" cellpadding="0" cellspacing="0">
<tr>
<td id="oben_links"></td>
<td id="oben_mitte"></td>
<td id="oben_rechts"></td>
</tr>
<tr>
<td id="mitte_links"></td>
<td id="mitte_mitte"><h2 align="center">Login</h2>
<table width="100%" border="0">
<tr>
<td>Benutzername:</td>
<td><input name="user" type="text"></td>
</tr>
<tr>
<td>Passwort:</td>
<td><input name="pass" type="password"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input name="send" type="submit" value="Login"></td>
</tr>
</table><p align="center">&nbsp;</p></td>
<td id="mitte_rechts"></td>
</tr>
<tr>
<td id="unten_links"></td>
<td id="unten_mitte"></td>
<td id="unten_rechts"></td>
</tr>
</table></form>
<?
}
?>


logout.php
<?
ob_start();
include("../function.ini.php");
include("../config.ini.php");
$id = $_GET['id'];
mysql_query("UPDATE `admin` SET `login` = 'out',`sessid` = 'out', `ip` = 'out', `time` = 'out' WHERE `id` = '".$id."'") or die(mysql_error());
setcookie("adminsess",yes,time()-548215);
header('Location: index.php');
exit();
?>


Es wird beim Login auf die Seite "page.php?id=*&sess=*" weitergeleitet

milahu milahu am 15.06.06 12:48

Wozu denn so viel Geschiss, wenn es doch 2, 3 Zeilen in der .htaccess auch tun..? <:
Don't change a running system. Don't even touch it! ;)

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt