webmasterstuff: inloggen met sessie

Een bezoeker laten inloggen (met sessie)
Stappenplan: via een formuliertje heeft je bezoeker zijn gebruikersnaam en wachtwoord ingegeven. Klik hier als je zo'n formulier nog niet zelf kunt maken.

De ingevoerde informatie moet eerst gecontroleerd worden met die uit je databank/database; daarna moet een sessie gemaakt worden die op elke pagina onthoudt dat je bent ingelogd.
Lees goed de extra info achter de //-tekens

   
session_start();                     // sessie meteen starten na de php-tag (verplicht!)
include('connect.php');              // een pagina die connectie maakt met de databank/database
if(isset($_POST['Submit'])){         // informatie vanuit het ontvangen formulier bevestigen en verwerken 
                                     // 'Submit' moet je veranderen in de verzendnaam van jouw eigen formulier
      if(empty($_POST['gebruikersnaam'])){echo"Vul je naam in!";}       // controle of een gebruikersnaam werd ingevuld
  elseif (empty($_POST['wachtwoord'])){echo"Vul je wachtw in!";}        // controle of een wachtwoord werd ingevuld
  else{                                                                 // als beide werden ingevuld = controleren 
                                                                        // op echtheid in de database hieronder


// hieronder is $sLid de naam die ik geef aan de zoekopdracht van alle info; erachter staat alles wat op door de database
// laat zoeken - achter de WHERE teken wordt de eigenlijke controle gedaan. Dit moet je veiliger doen namelijk op de
// manier waarop je bij registratie beveiligd hebt (een md5 of een AES of hach.. hieronder staat de algemene controle dus
$sLid = mysql_query("SELECT id, gebruikersnaam, wachtwoord  FROM tabelnaam                             // tabelnaam veranderen  
                         WHERE gebruikersnaam='".$_POST['gebruikersnaam']."' AND wachtwoord='".$_POST['wachtwoord']."')
                         LIMIT 1") or die(mysql_error());

 if(mysql_num_rows($sLid)==0){echo"Een of meerdere gegevens zijn niet juist ingevoerd, probeer het nog een keer";}/// 
 else{ 
    $fLid = mysql_fetch_assoc($sLid);                     // ALLE OPGEHAALDE GEGEVENS IN EEN SESSIE ZETTEN  
    $_SESSION['ducksite'] = $fLid['gebruikersnaam'];      // sessie ducksite heeft variabele gebruikersnaam mee 
    $_SESSION['ducksite'] = $fLid['woonplaats'];          // sessie ducksite heeft ook variabele woonplaats mee 
    header("Location: pagina_na_inloggen.php");           // na succesvol inloggen = naar deze pagina gaan
    exit;                                                 // en je header sluiten  
    }//--einde wel bestaan  
  }//--einde netjes ingevuld  
}//--einde van de if inlogsubmit                                       
 

De laatste regels voor de exit is eigenlijk de sessie een naam geven en erbij zetten welke variabele uit je databank/database je eraan wilt koppelen. Zorg dat je sowieso een sessie hebt waarin de gebruikersnaam van de bezoeker staat vermits je deze hebt laten controleren in je databank maar je kunt een andere sessie met dezelfde naam een andere variabele mee laten sturen, dus dezelfde sessie ducksite heeft ook woonplaats mee.
Succes ermee en denk eraan: enkele keren proberen.