• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Login

djfabi

Mitglied
Hallo,

ich habe da mal nen Login mit Sessions geschrieben, aber ich komme nicht weiter,

ich will jz nun die Informationen aus einer Datenbank.. Aber wie, ich habe dies schon versucht, abber komme nicht weiter...

Ich hoffe es kann mir wer helfen...


"index".php:

HTML:
<?php   /* Vor Beenden der Session wieder aufnehmen */   session_start();
   /* Beenden der Session */   session_destroy();   $_SESSION = array();?><html><body><h3>Login-Seite</h3><form action="sc_schutz_b.php" method="post">  <p><input name="n" /> Name</p>  <p><input type="password" name="p" /> Passwort</p>  <p><input type="submit" value="Login" /></p></form></body></html>


Datei 2:

HTML:
<?php   /* Session starten oder wieder aufnehmen */   session_start();
   /* Falls Aufruf von Login-Seite */   if(isset($_POST["n"]))   {      /* Falls Name und Passwort korrekt */      if($_POST["n"] == "Hans" && $_POST["p"] == "bingo"      || $_POST["n"] == "Gerd" && $_POST["p"] == "tango")         {         $_SESSION["n"] = $_POST["n"];      }   }
   /* Kontrolle, ob innerhalb der Session */   include "sc_schutz.inc.php";?>
<html><body><h3>Intro-Seite</h3><?php   /* Begrüßung des Benutzers */   echo "<p>Hallo " . $_SESSION["n"] . "</p>";?><p><a href="sc_schutz_c.php">Zur beliebigen Seite</a></p><p><a href="sc_schutz_a.php">Logoff</a></p></body></html>


Datei3:

HTML:
<?php   /* Session wieder aufnehmen */   session_start();
   /* Kontrolle, ob innerhalb der Session */   include "sc_schutz.inc.php";?>
<html><body><h3>Beliebige Seite</h3><?php   /* Begrüßung des Benutzers */   echo "<p>Hallo " . $_SESSION["n"] . "</p>";?><p><a href="sc_schutz_b.php">Zur Intro-Seite</a></p><p><a href="sc_schutz_a.php">Logoff</a></p></body></html>


datei4.inc.php

HTML:
<?php   /* Kontrolle, ob innerhalb der Session */   if (!isset($_SESSION["n"]))   {      echo "<p>Kein Zugang</p>";      echo "<p><a href='sc_schutz_a.php'>Zum Login</a></p>";      echo "</body></html>",      exit;   }?>
 
Erstmal musst du deine Datenabnk zugänglich machen mit einem Datenbank user....
dann einfach folgende Befehle anschauen:
mysql_connect(servername,username,password);
mysql_select_db("my_db", $con);
$result = mysql_query("SELECT * FROM `$table`");
 
Danke erstmal, aber nun meine Probleme,

Wo baue ich das ambesten ein, und Was muss noch kommen, weil bis jz wird ja nur mit der Datenbank verbunden...

Wie überprüfe ich das und wie mache ich ein Vergleich mit dem passwort und der Email adresse, mit dem Vergleichsoperator like? Und wenn ja wie genau?
 
Danke erstmal, aber nun meine Probleme,

Wo baue ich das ambesten ein, und Was muss noch kommen, weil bis jz wird ja nur mit der Datenbank verbunden...

Wie überprüfe ich das und wie mache ich ein Vergleich mit dem passwort und der Email adresse, mit dem Vergleichsoperator like? Und wenn ja wie genau?

Wenn eine Verbindung steht, kannst du (vorausgesetzt du hast eine SQL Datenbank) mit SQL Befehlen die Datenbank abfragen, hinzufügen oder ändern.

SELECT,DELETE,UPDATE

Bei einer NoSQL Datenbank (mongoDB) ist das etwas anders, jede NoSQL Datenbank hat andere Vorteile und eine andere API.



Ich wurde mit einem mysql_num abfragen ob der name existiert, danach würde ich das Passwort hollen und verschlüsseln (md5, crypt wobei crypt beforzugt werden sollte) und vergleicht den hash. Danach füllt man erst die SESSION Variablen.... oder auch nicht.
Ein SELECT sieht z.B so aus: SELECT * FROM tabelle; auch das zählin ist mit SELECT COUNT(*) FROM tabelle; möglich. Beim Login würde ich jedoch mit einer WHERE Klausel arbeiten.

SELECT attribut1, attribut2 FROM tabelle WHERE name ='test';

Es gibt noch JOINS aber ich glaube das geht hier erstmal zu weit, da man JOIN nicht für ein Login braucht und das hier bei einem Anfänger nur zur verwirrung kommt.
 
Zurück
Oben