Ok danke snuu für die vielen Antworten Sie waren mir sehr hilfreich.
Könntest du mir bei folgenden System erläutern wie du ein Admin Interface aufbauen würdest (von den Links her, weil will nicht sagen für jede Funktion echo "<a href='newsposten.php'>News Posten</a>"; es scheint mir einfach zu unsicher.)
System:
Eine Userdatenbank -> Registrierung Access Level = 0 ( 0=Mitglied | 1=Admin | 2=Owner )
Dann setzte ich Cookies folgendermaßen (db Daten aus Sicherheitsgründen weggenommen):
Auf der Seite frage ich dann quasi ab ob bei dem user in der db steht ob er 0,1 oder 2 hat. Dann schau ich nach ob er eingeloggt ist:
1. entstehen mir dabei komische Cookie Fehler bei manchen Usern. Kann ich die Cookies besser lösen ? Session dürfte mich ja dabei auch nicht sonderlich weit bringen, da es ja nur solange der Browser auf ist gilt oder?
2. Weiss ich nicht wie ich es jetzt ausführen soll ohne dabei immer die genauen Links anzugeben. Denn die sollen wenn möglich den Usern verborgen bleiben um eventuelle Fremdzugriffe zu verhindern. Blos wie geht dies oder gibts dort noch eine sichere Variante ?
Ich würde mich sehr freuen wenn du mir da weiter helfen könntest, da ich sehe du bist ein sehr kompeteten PHP Künstler
Könntest du mir bei folgenden System erläutern wie du ein Admin Interface aufbauen würdest (von den Links her, weil will nicht sagen für jede Funktion echo "<a href='newsposten.php'>News Posten</a>"; es scheint mir einfach zu unsicher.)
System:
Eine Userdatenbank -> Registrierung Access Level = 0 ( 0=Mitglied | 1=Admin | 2=Owner )
Dann setzte ich Cookies folgendermaßen (db Daten aus Sicherheitsgründen weggenommen):
Code:
<script language="php">
$DatabaseName = "";
$DbHostName = "";
$DbUserName = "";
$DbPassWord = "";
$db = mysql_connect("$DbHostName", "$DbUserName", "$DbPassWord");
$get_user = mysql_db_query("$DatabaseName", "SELECT nick,pw FROM user WHERE pw = '$pw' and nick = '$nick'");
$num = mysql_num_rows($get_user);
if ($num > 0)
{
for ($i=0; $i<$num; $i++)
{
$nickname = mysql_result($get_user, $i, "nick");
$password = mysql_result($get_user, $i, "pw");
}
if ($pw == $password)
{
$user_eingeloggt = true;
setcookie("user_eingeloggt", $user_eingeloggt, time()+360000000);
setcookie("password", $password, time()+360000000);
setcookie("nickname", $nickname, time()+360000000);
}
}
else
{
echo "User existiert nicht!";
}
mysql_close($db);
</script>
Auf der Seite frage ich dann quasi ab ob bei dem user in der db steht ob er 0,1 oder 2 hat. Dann schau ich nach ob er eingeloggt ist:
Code:
if (isset($user_eingeloggt))
1. entstehen mir dabei komische Cookie Fehler bei manchen Usern. Kann ich die Cookies besser lösen ? Session dürfte mich ja dabei auch nicht sonderlich weit bringen, da es ja nur solange der Browser auf ist gilt oder?
2. Weiss ich nicht wie ich es jetzt ausführen soll ohne dabei immer die genauen Links anzugeben. Denn die sollen wenn möglich den Usern verborgen bleiben um eventuelle Fremdzugriffe zu verhindern. Blos wie geht dies oder gibts dort noch eine sichere Variante ?
Ich würde mich sehr freuen wenn du mir da weiter helfen könntest, da ich sehe du bist ein sehr kompeteten PHP Künstler