Logo - MyWebsolution.de
User gesamt  :  2316711
User online  :  1
KubaSeoTräume, PHP Forum, PHP Community and more ... MyWebsolution.de!
   
   
 
Registrieren Login User F.A.Q Suche Home

eingeloggt bleiben

MyWebsolution.de Foren » Anfängerfragen PHP und MYSQL » login und seiten

Seite: <  1 2 Posts pro Seite: 5 10 20
Autor Thread
03.01.2007 20:28 Uhr
ulmli
Forenuser
registriert 03.01.2007
wohnt in
Beiträge 46
Hallo Flitze,
ein Loginsystem habe ich noch nicht ich habe gerade angefangen das Tutorial wo auf deiner seite ist anzugucken, das finde ich ganz supi auch das zur registrieren nur wollte ich es machen dass man per mail nochmal bestätigen muss. also sprich man registriert sich und bekommt dann eine mail mit link wenn man den link klickt dann wird man freigeschaltet. Und ich habe gelesen, dass man die Seiten auch mit der SessionId kontrollieren kann, aber da weiß ich auch noch nicht so recht.
Soviel mal, ich bin gerade erst am Anfang, ein klein wenig habe ich ja schon kapiert :rolleyes:
Profil ansehen
03.01.2007 23:56 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
Also wenn du nen registrierungslink haben willst, dann musst du noch zwei weitere Spalte in der MySQL-Tabelle hinzufügen. Die erste heißt Feischaltung und ist vom Typ BOOL, sie steht so lange auf 0 bis der Registrierungslink angeklickt wurde. Die andere Spalte könnte RegID oder so heißen. Sie sollte vom Typ VARCHAR und 32 Stellen groß sein. Bei der Registrierung erzeugst du dann eine Zufallszahl mit random() und codierst sie mit md5(). Dann erstellst du einen Link der z.B.
www.ulmli.de/activate.php?nickname=DerNickname&regid=DieRegIdVonEben
heißen könnte.

In der Datei activate.php startest du dann eine MySQL-Abfrage die so aussehen könnte:

PHP:
$sql = "SELECT
             ID
        FROM
             User
        WHERE
             Nickname = '".mysql_real_escape_string($_GET['nickname'])."' AND
             RegID = '".mysql_real_escape_string($_GET['regid'])."'
        ";

Dann prüfst du, ob ein User mit dieser RegID gefunden wurde und schaltest ihn frei.

PHP:
$result = mysql_query($sql);
if(mysql_num_rows($result)) {
    $row = mysql_fetch_assoc($result);
    $sql = "UPDATE
               User
            SET
               Freischaltung = 1
            WHERE
               ID = '".$row['ID']."'
           ";
    mysql_query($sql);
    echo "Herzlichen Glückwunch, ".htmlentities($_GET['nickname'])."!\n".
         "Dein Account wurde erfolgreich freigeschaltet, du kannst dich nun einloggen";
}
else {
    echo "Es wurde kein Account mit diesen Daten gefunden.";
}


Bei dem Login musst du nun noch überprüfen, ob das Tabellenfeld 'Freischaltung' des Users auch auf 1 steht.

Für einen Anfänger finde ich das aber schon recht kompliziert ;)


Mit der SessionID würde ich keine Seiten kontrollieren, aber du kannst z.B. die ID eines Users in der Session speichern. Beim Aufruf eines Skriptes Schreibst du dann ganz oben in die Datei

PHP:
<?php
    session_start
();
    
// Prüfen ob der User eingeloggt ist
    
if(!isset($_SESSION['UserID'])){
       
// Falls nein, Skript beenden
       
die("Sie sind nicht eingeloggt, nur eingeloggte User dürfen diese Seite betreten.");
    }
    else{
        echo 
"Sie dürfen diesen Bereich betreten.";
        
// Skript ausführen
    
}
?>



Profil ansehen Mail senden
04.01.2007 00:20 Uhr
ulmli
Forenuser
registriert 03.01.2007
wohnt in
Beiträge 46
ups... du bist aber auch noch spät unterweg ;)

danke für die mühe die du dir gemacht hast, hört sich irgendwie
wirklich nicht so einfach an wie ich dachte
nu ich will mal morgen mit anfangen und werde dann sehen ob es klappt oder nicht
wenn nicht nu dann muss ich wohl noch mit mir geduld haben
aber ich glaube das mit dem kontrollieren habe ich begriffen, danke.

gute nacht
ulmli

Dieser Beitrag wurde am 04.01.2007 um 00:23:48 Uhr von ulmli zum 1. Mal editiert.
Profil ansehen
05.01.2007 11:32 Uhr
ulmli
Forenuser
registriert 03.01.2007
wohnt in
Beiträge 46
Hallo Flitze,
ich bräuchte auch nochmal deinen Rat, nämlich habe ich das so gemacht mit der RegID und der Verschlüsselung es wird auch eine RegID eingetragen, aber im Link der verschickt wird ist eine ganz andere RegID.
An was kann das denn liegen
gruß
ulmli
Profil ansehen
05.01.2007 12:12 Uhr
ulmli
Forenuser
registriert 03.01.2007
wohnt in
Beiträge 46
huhu,
ich habs selbst rausgefunden, sorry fürs stören.
grüßlis
ulmli
Profil ansehen
Seite: <  1 2 no reply
Powered by Pascal Landau © 2006 MyWebsolution.de
Designed by Pascal Landau © 2006 MyWebsolution.de
 
 
 
 
Home Email Impressum Disclaimer Statistik