Brauche dringend hilfe habe login mit mysql programmirt und will jetzt noch eine
Abfrage machen mit der man ein Benutzer Level abfragen kann wenn
man auf seiten kommt die zum beispiel nur mi level 3 anschauen kann sonst wieder zum index zurück kommt.
Schon mal Danke
Rechtschreibfehler dürft ihr behalten.
Ankündigung
Einklappen
Keine Ankündigung bisher.
[Erledigt] Level Abfrage
Einklappen
Neue Werbung 2019
Einklappen
X
-
Ein Gast antworteteWann welche in der Session stelle muss ich das?
-
Ein Gast antwortetewo muss ich eintragen was er machen soll wenndas recht stimmt und wenn das recht nicht stimmt
Einen Kommentar schreiben:
-
du fügst in der db noch ne spalte mit "level" hinzu, liest das ebenfalls aus, speicherst es in der session und auf der nächsten seite prüfst du ob er das nötige recht hat
bsp:
PHP-Code:<?php
if($_SESSION['recht'] >= 2)
{
hanswurst
}
else
{
die();
}
Einen Kommentar schreiben:
-
Ein Gast antworteteWo muss ich jetzt die abfrage rein schreiben?
Einen Kommentar schreiben:
-
Ein Gast antworteteHier mein Code
PHP-Code:<?php
session_start();
// Überprüfen, ob das Formular abgeschickt wurde und ob beide Angaben gemacht wurden.
if( isset($_POST['username'], $_POST['passwort'])
AND
strcmp(trim($_POST['username']),'') != 0
AND
strcmp(trim($_POST['username']),'') != 0 ) {
// Einbinden der Konfigurationsdatei
include_once 'config.inc.php';
// Erstellen der Verbindung zur MySQL-Datenbank
if( !$connection = mysql_connect( $_config['host'], $_config['user'], $_config['password'] ) ) {
die( 'Verbindung zum Datenbankserver konnte nicht hergestellt werden.' );
}
if( !mysql_select_db( $_config['database'], $connection ) ) {
die ( 'Die Datenbank ' . $_config['database'] . ' kann nicht verwendet werden.
MySQL-Error:
' . mysql_error() );
}
// SQL-Anweisung an die Datenbank senden, um erstens herauszufinden, ob
// diese Kombination von Usernamen und Passwort überhaupt existiert und
// zweitens bei Existenz Userinformationen auszulesen
$sql = "SELECT
_id,
_anzahlLogins
FROM
archiv_login
WHERE
_username = '" . trim($_POST['username']) . "'
AND
_passwort = '" . md5(trim($_POST['passwort'])) . "'";
$res = mysql_query($sql) or die( 'Error[SELECT|User]:
<pre>' . $sql . '</pre>
MySQL-Error: ' . mysql_error() );
// Nur wenn genau ein Datensatz selektiert wurde wird der User eingeloggt.
// In allen anderen Fällen wird er zurück zum Loginformular geleitet.
if( mysql_num_rows($res) != 1 ) {
header( 'Location: http://localhost/loginfehler.html' );
exit();
}
else {
// Der Schlüssel 'loggedIn' erhält den Wert 'true'. So kann überprüft später werden,
// ob der User eingeloggt ist oder nicht.
$_SESSION['loggedIn'] = true;
// Die userspezifischen Daten werden ausgelesen und der Session hinzugefügt
$user = mysql_fetch_object($res);
$_SESSION['anzahlLogins'] = $user->_anzahlLogins;
$_SESSION['id'] = $user->_id;
// Aktualisierung des Anzahl der Logins
$sql = 'UPDATE
archiv_login
SET
_anzahlLogins = _anzahlLogins + 1
WHERE
_id = ' . $user->_id;
mysql_query($sql) or die( 'Error[UPDATE|User]:
<pre>' . $sql . '</pre>
MySQL-Error: ' . mysql_error() );
// Der Login war erfolgreich und der User wird zur Startseite des
// passwortgeschützen Bereichs weitergeleitet
header( 'Location: http://localhost/geheim.php' );
exit();
}
}
else {
header( 'Location: http://localhost/loginformular.html' );
exit();
}
?>
Einen Kommentar schreiben:
-
du liest das recht aus der mysql-tabelel aus, speicherst beim login das recht in der session, und kannst das somit weiterverarbeiten
somit solltest du bei dem oben geannten link unter "SESSIONS" nachguggen
Einen Kommentar schreiben:
-
Ich kann mir zwar etwa vorstellen was du willst, aber du solltest deine Frage doch noch etwas genauer stellen.
Erweiter deine Mysql Tabelle mit einer Spalte "Level". Dort trägst du das Level ein.
Wenn eine Seite nun Level 3 benötigt fragst du in der Datenbank einfach ab ob der aktuelle Nutzer Level 3 hat. Wenn nicht leitest du auf den Index weiter.
Was genau musst du noch wissen? Zeig doch mal deinen Login-Code.
Einen Kommentar schreiben:
-
Ein Gast antworteteIch find nicht wo ich gugen muss
Einen Kommentar schreiben:
-
Ein Gast antworteteGibt es für so was nicht ein tuturial.
Einen Kommentar schreiben:
-
Also so wird dir bestimmt keiner helfen können...
Wo ist denn genau dein Problem...
Einen Kommentar schreiben:
-
Einen Kommentar schreiben: