Jeg har en Logind side og vil have, at 2 bruger kan loge ind med samme brugernavn samtidigt. dvs. hvis man har en bruger med brugernavnet bruger1 som har logget sig ind, hermed kan en anden ikke bruger bruger1´s oplysninger før vedkommende har logget sig ud. Er det en som kan komme med en forklararing/eksempel. På forhånd mange tak.
Nej, jeg har faktisk ikke prøvet at lave vis online brugere og har en begrænset kendskab til PHP. variablen $tid skal oprettes som datetime i databasen eller hvordan. Jeg har kun brugervnavn og password i tabelen user.
jo, grunden til dette er, at bruger-login siden er til en hjemmeside som man skal abonnere for at læse indholdet, og at det bliver afholdt kurser om emnet. Dette skal f.eks. sikre at ikke flere kursister bruger samme login.
$resultdata = mysql_query("select * from din db where noget = noget"); $rowdata = mysql_numrows($resultdata); if ($rowdata == "1") { //brugeren findes } else { //brugeren findes ikke }
Problemet der kan opstå hvis det er et kursus, er at man sikkert skal læse en del(?), hvilket vil sige nogen gange mere end 5 min inaktivitet. Efter de 5 min, kan en anden bruger logge på - men det er nok den letteste måde at gøre det på.
Hvis det skal sættes ind i dit system, er jeg nødt til at se noget kode.
<?php header ("Location: forside.php"); ?> <?php session_start(); ?> <? $strTitle="Login side";?> <? include("header.inc"); ?> <body> <div class="indhold"> <? $db=mysql_connect("localhost", "bruger7", "bruger77"); mysql_select_db("bruger"); $result = mysql_query("SELECT NULL FROM users2 WHERE brugernavn = '".$_POST['brugernavn']."' AND password = '".$_POST['password']."'") or die (mysql_error()); if ($antal_raekker=mysql_num_rows($result)>0){ $_SESSION['logget_ind']=1; $_SESSION['brugernavn'] = $brugernavn; $_SESSION['password'] = $password;
} else { echo "<h1>Forkert login-oplysninger</h1> <p>Du skal være logget ind for at se siden sider. <a class=\"tlink\" href=\"login.php\">Log in</a></p>"; } ?> </div> <? include("menu7.inc"); ?> </body> </html>
Så er det nok her, at jeg skal også tjeke, at det er ikke 2 bruger som loge ind med samme oplysninger samtidigt..
Du kan lave et felt mere i din logintabel som hedder status, hvor du under login updater feltet til værdien 1 og så bare:
mysql_query("SELECT NULL FROM users2 WHERE brugernavn ='".$_POST['brugernavn']."' AND password = '".$_POST['password']."' AND status !='1'") or die (mysql_error());
Dette kræver dog, at folk logger ud og ikke bare lukker browseren, men det kan kombineres med Mysli's onlinetjek
>> mcardle, Ja jeg har tilføjet en felt mere som status og feltet vil blive tjeket, men kan ikke finde ud af, hvordan kan jeg kombinere med Mysli´s onlinetjek, kan du eller en anden være venligt at komme med et forslag hvordan præcis jeg kan gør det.
>> mcardle, tak for det, håber at Mysli eller måske en anden kan hjælpe...
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.