Saad (20.05.2013)
Thema: Sessions !
-
20.05.2013, 17:24 #1
Sessions !
[HIDE=19]Joo Community ! :-D
Ich bin gerade dabei ne' Webseite zu erstellen, wo man dann einiges bestellen kann usw..
So nun ist es halt so, dass sich der Benutzer einloggen kann..
Das einloggen haben ich so realisiert:
Ich hab ein Formular (formular.php) und dortPHP-Code:<form action="test.php" method="POST">
[HIDE=50]PHP-Code:<?php
SESSION_START();
//Verbindung zur Datenbank aufbauen
{
$_username = mysql_real_escape_string($_POST["username"]);
$_passwort = mysql_real_escape_string($_POST["password"]);
$_sql = "SELECT * FROM user WHERE
Username = '$_username' AND
Passwort='$_passwort'
LIMIT 1";
// Prüfen, ob der User in der Datenbank existiert !
$_res = mysql_query($_sql, $con);
$_anzahl = @mysql_num_rows($_res);
if ($_anzahl > 0)
{
echo "Login passt.<br>";
# In der Session merken, dass der User eingeloggt ist !
$_SESSION["login"] = 1;
}
else
{
echo "Die Logindaten sind nicht korrekt.<br>";
}
}
?>
So nun habe ich einen weiteren Menüpunkt, wo man Artikel einsehen kann usw..
Wenn ich nun draufklicke, sollte nun mal überprüft werden, ob der User, der eingeloggt ist, ein Admin ist oder nicht..
In der Datenbank habe ich hierfür ein Attribut mit dem Namen Status eingefügt und automatisch immer mit 0 gefüllt !
Also wenn sich ein User bei uns registiriert, bekommt er automatisch den Wert 0.. Admins bekommen dann von mir den Wert 1..
So das Problem ist jetzt, wie überprüfe ich, ob der User ein Admin ist oder nicht? Bzw. wie kann ich auf die Werte vom Formular draufgreifen?
Ich hoffe, ihr versteht mein Problem :-D
Lg, Saad.[/HIDE]Geändert von Saad (20.05.2013 um 21:10 Uhr)
Bis auf Sonderschüler kannst du alle Leute fragen - Saad ist PERFEKT wie 'ne Zeitform der deutschen Sprache.
-
20.05.2013, 17:35 #2
- Registriert seit
- 18.11.2011
- Beiträge
- 193
Thanked 66 Times in 60 PostsAW: Sessions !
PHP-Code:$user= mysql_fetch_array(mysql_query("select * from TABELLE where name = '".$_POST["username"]."'"));
Und dann halt:
if ($user[status] == '0') {
//User hat rang 0//
} else {
//User hat rang 1//
}
Geändert von HandZup (20.05.2013 um 17:45 Uhr)
PUT YOUR FUCKING HANDS UP!
-
The Following User Says Thank You to HandZup For This Useful Post:
-
20.05.2013, 17:42 #3
AW: Sessions !
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\Wet\Spielplan - Programm.php on line 7
Aber, in $_SESSION["login"] ist ja nur der Name nicht enthalten, mit dem sich der User einloggt :-bBis auf Sonderschüler kannst du alle Leute fragen - Saad ist PERFEKT wie 'ne Zeitform der deutschen Sprache.
-
20.05.2013, 17:43 #4
- Registriert seit
- 18.11.2011
- Beiträge
- 193
Thanked 66 Times in 60 PostsAW: Sessions !
Änder Login mal zu Username, dann müsste es gehen.
PUT YOUR FUCKING HANDS UP!
-
20.05.2013, 17:44 #5
AW: Sessions !
Notice: Undefined index: username in C:\xampp\htdocs\Wet\Spielplan - Programm.php on line 7
Bis auf Sonderschüler kannst du alle Leute fragen - Saad ist PERFEKT wie 'ne Zeitform der deutschen Sprache.
-
20.05.2013, 21:06 #6
- Registriert seit
- 17.03.2013
- Beiträge
- 34
Thanked 19 Times in 17 PostsAW: Sessions !
Stell mal die Beitragszahl für das Lesen auf 10, dann kann ich auch sehen was du dort vorhast.
Die Fehlermeldung sagt jetzt eigentlich nur aus, dass $_Post['username'] ein leerer Wert ist. Also wurde wahrscheinlich im vorherigen Formular kein Feld mit dem Namen "Username" vorgegeben. Das könnte dann auch erklären, weshalb dein $_Session["login"] weiterhin leer ist.
Also erstmal prüfen ob überhaupt der Username per Post übergeben wird. Eventuell groß/Kleinschreibung beachten
-
The Following User Says Thank You to guenni For This Useful Post:
Saad (20.05.2013)
-
20.05.2013, 21:13 #7
AW: Sessions !
Naja ich hab ein Feld im Formular mit dem namen username.. Hide wurde auf 19 gesetzte
Bis auf Sonderschüler kannst du alle Leute fragen - Saad ist PERFEKT wie 'ne Zeitform der deutschen Sprache.
-
20.05.2013, 23:25 #8
- Registriert seit
- 17.03.2013
- Beiträge
- 34
Thanked 19 Times in 17 PostsAW: Sessions !
Joa sieht ganz so aus als würden im Formular die Daten falsch angegeben. Oder du hast die test.php direkt aufgerufen ohne vorher das Formular auszufüllen.
Dein Formular müsste etwa so aussehen:
PHP-Code:<form action="test.php" method="POST">
<input name="username" value="testnick" />
<input name="username" value="password" />
<input type="submit" value="Login" />
</form>
PHP-Code:echo $_POST["username"];
-
The Following User Says Thank You to guenni For This Useful Post:
Saad (21.05.2013)
-
25.05.2013, 16:46 #9
AW: Sessions !
So wenn ich das in test.php aufrufe, dann steht eh der Benutzername drinnen bzw. wird er ausgegeben :-/
Aber wenn ich das dann in einer anderen .php aufrufe, nicht mehr.. Ob wohl ich die test.php "include"..
Kann ich eigentlich das Formular an z.B. test.php senden und an test2.php ?
E:// Habs geschafft ! :-DGeändert von Saad (25.05.2013 um 17:10 Uhr)
Bis auf Sonderschüler kannst du alle Leute fragen - Saad ist PERFEKT wie 'ne Zeitform der deutschen Sprache.
-
25.05.2013, 17:15 #10
- Registriert seit
- 28.10.2011
- Beiträge
- 630
Thanked 283 Times in 171 PostsAW: Sessions !
<input name="username" value="testnick" />
<input name="username" value="password" />
Wie fail kann man eig. sein?
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.