Login mit Sessions
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anweisung
beispiel
bekommen
brauch
city
code
country
datensatz
eins
globalen bereich
http
kleine frage
limit
login
machen
register
schleife
session
url
verwenden
-
ich brauche eure hilfe beim login.
also früher hat man das ja so gemacht
// Get member ID into a session variable $id = $row["id"]; session_register('id'); $_SESSION['id'] = $id; // Get member username into a session variable $username = $row["username"]; session_register('username'); $_SESSION['username'] = $username;
also ich brauch 2 variablen den username und die id in meiner season.
jetzt habe ich gelesen das mann session_register garnicht mehr verwenden darf / soll.
wie mach ich das sonst? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Warnung
Ab PHP 4.2.0 ist der standardmäßige Wert für die PHP-Anweisung register_globals off. Dies ist eine wesentliche Änderung in PHP. Die Anweisung register_globals off beeinflusst den Satz von vordefinierten Variablen, die im globalen Bereich verfügbar sind. Um zum Beispiel DOCUMENT_ROOT zu bekommen, müssen Sie $_SERVER['DOCUMENT_ROOT'] statt $DOCUMENT_ROOT verwenden oder um $id von der URL http://www.example.com/test.php?id=3 zu bekommen $_GET['id'] statt $id oder $_ENV['HOME'] statt $HOME.
Für diese Änderung betreffende Informationen lesen Sie bitte den Konfigurations-Eintrag für register_globals, das Sicherheitskapitel über die Verwendung von Register Globals und außerdem die PHP » 4.1.0 und » 4.2.0 Release Announcements.
Die reservierten vordefinierten Variablen, wie die Superglobalen Arrays, sollten bevorzugt verwendet werden.
Quelle: http://www.php.net/manual/de/language.variables.predefined.php
und auch nocheinmal hier:
Hinweis:
Ab PHP 4.1.0 sollten Sie statt session_register() das supergrobale Array $_SESSION verwenden (Beispiel 2).
http://www.selfphp.info/funktionsreferenz/session_funktionen/session_register.php
das 2. sollte selbsterklärend sein -
http://www.tutorials.de/php-tutorials/9684-php-mysql-login-system-mit-sessions.html
hey das könnte dir auch weiter helfen -
ich hätte da noch ne kleine frage, ich beisse mich gerade durch ein login script.
warum macht der da immer eine schleife
$sql = mysql_query("SELECT * FROM members WHERE id='$id' LIMIT 1"); $count = mysql_num_rows($sql); if ($count > 1) { echo "There is no user with that id here."; exit(); } while($row = mysql_fetch_array($sql)){ $country = $row["country"]; $state = $row["state"]; $city = $row["city"]; $accounttype = $row["accounttype"]; $bio = $row["bio"];
die brauch ich doch garnicht?
und bei if ($count > 1) warum denn größer eins? de smuss doch kleiner heißen??
Beitrag zuletzt geändert: 31.10.2010 11:57:04 von highborn -
highborn schrieb:
ich hätte da noch ne kleine frage, ich beisse mich gerade durch ein login script.
warum macht der da immer eine schleife
$sql = mysql_query("SELECT * FROM members WHERE id='$id' LIMIT 1"); $count = mysql_num_rows($sql); if ($count > 1) { echo "There is no user with that id here."; exit(); } while($row = mysql_fetch_array($sql)){ $country = $row["country"]; $state = $row["state"]; $city = $row["city"]; $accounttype = $row["accounttype"]; $bio = $row["bio"];
die brauch ich doch garnicht?
und bei if ($count > 1) warum denn größer eins? de smuss doch kleiner heißen??
Das Script ist schlecht:
1. Gibt es die iD nur einmal (jedenfalls wenn die ID als Auto Incremend definiert ist)
2. LIMIT 1 holt sowieso nur einen Datensatz
=> Es wird aus diese beiden Gründen so oder so nur ein Datensatz geladen. Man sollte eher überprüfen, ob überhaupt ein Datensatz geladen wurde und das könnte man macen, wie du selber schon sagtest, indem man überprüft, ob der $count < als eins ist oder gleich 0 ist.
3. Die Schleife ist auch unnötig, da so oder so nur ein oder kein Datensatz. -
ja das script ist aus einem php tutorial... das ja super wenn man das selbst lernt... zum glück verstehe ich mittlerweile soviel und sehe die fehler.
naja ich frag sowieso nach dem username und nicht nach der id. (username ist unique) -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage