Logo - MyWebsolution.de
User gesamt  :  2310966
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 Posts pro Seite: 5 10 20
Autor Thread
03.01.2007 14:33 Uhr login und seiten
ulmli
Forenuser
registriert 03.01.2007
wohnt in
Beiträge 46
hallo zusammen,
ich bin neu, habe mich gerade angemeldet weil ich gesehen habe dass hier nicht soviele menschen sind und ich vielleicht als blutiger anfänger auch fragen stellen darf.
also nu ich habe eine datenbank die ich per loginskript sichern will das skript habe ich im workshop auch schon gefunden, aber nun kommt mein problem und ich bitte euch jetzt nicht zu lachen. mämlich wie mache ich das das meine datenbankseiten eben dann nur nach einem login für denjenigen sichtbar sind.
ich meine so: wenn jemand meinen seitennamen kennt kann er den oben in der adresszeile eingeben ohne das er sich angemeldet hat.
ich blicke nicht wie das geht. vielleicht kann mir jemand weiterhelfen.
liebe grüße
ulmli
Profil ansehen
03.01.2007 17:38 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
Hey,
willkommen im Forum

Zitat:
aber nun kommt mein problem und ich bitte euch jetzt nicht zu lachen

Es gibt keine dummen Fragen ;)

Mir ist leider nicht ganz klar, was du mit datenbankseiten meinst...

grundsätzlich ließe sich ein Schutz folgendermaßen realisieren

PHP:
<?php
if(!User eingeloggt)
    die(
"Sie sind nicht eingeloggt");
else
    
//Script ausführen..
?>


Allerdings weiß ich nicht, ob das das ist, was du suchst...


Profil ansehen Mail senden
03.01.2007 19:10 Uhr
ulmli
Forenuser
registriert 03.01.2007
wohnt in
Beiträge 46
Hallo Filze,
danke für deine Antwort.
ich habe eine Datenbank, in dieser werden nur Daten gesucht über Suchforumlare und dann ausgegeben in verschiedene seiten, je nach Suche.
Jetzt möchte ich das alles schützen, d.h man kann auf die Datenbank nur zugreifen wenn man eingelogt ist auf alle seiten.
wenn aber jetzt z.b meine seite www.ulmli.de/index.php heißt und da würde auch die datenbank liegen. und irgendwer der nicht eingeloggt ist weiß den namen und gibt das www.ulmli.de/index.php oben ein dann kann er doch trotzdem auf die seiten zugreifen... oder? Das kapiere ich nicht wie das funktioniert.
verstehst du was ich meine?
liebe grüße
ulmli
Profil ansehen
03.01.2007 19:13 Uhr
ulmli
Forenuser
registriert 03.01.2007
wohnt in
Beiträge 46
huhu,
entschuldige bitte ich habe deinen Namen falsch geschrieben. :oops::oops:
ulmli
Profil ansehen
03.01.2007 20:00 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
Das mit dem Namen ist kein Ding ;)

Zitat:
gibt das www.ulmli.de/index.php oben ein dann kann er doch trotzdem auf die seiten zugreifen... oder?

jein.. er fordert die Seite an, aber ob er auch etwas angezeigt bekommt obliegt allein dir. Mit der Abfrage, die ich vorher gepostet habe, kann man das kontrollieren.

Ich kann dir ein Beispiel geben, wenn du mir sagst, ob du schon ein Loginsystem hast und wie du kontrollierst, ob ein Benutzer eingeloggt ist.


Profil ansehen Mail senden
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 no reply
Powered by Pascal Landau © 2006 MyWebsolution.de
Designed by Pascal Landau © 2006 MyWebsolution.de
 
 
 
 
Home Email Impressum Disclaimer Statistik