Avatar billede TumseMM Nybegynder
09. oktober 2011 - 21:25 Der er 5 kommentarer og
1 løsning

Logget ind på flere brugere af gangen

Hej eksperten.dk

Jeg ville gerne vise brugerne, hvis de var logget ind, hvilken bruger de var logget ind med. Men siden jeg er logget ind med en masse forskellige brugere for at teste det hele ud, så står alle brugernavnene oven i hinanden..
Hvordan sørger man for at man højst kan være logget ind med én bruger?


<?php

    // Logud knap
    if($_SESSION['username'])
    {
        $res = mysql_query("SELECT * FROM a");             
        while($row = mysql_fetch_array($res))
        {

            $username = $row['username'];

        echo'<div style="position:absolute;">
        <p style="color:blue";>Du er logget ind som<br />'.$username.'</p>
        <form action="logout.php">
            <input type="submit" value="Log ud" name="logout">
        </form>
        </div>';

}

    }

?>
Avatar billede olebole Juniormester
09. oktober 2011 - 21:33 #1
<ole>

Tøm $_SESSION array'et og kald session_destroy(), når brugeren går ind på login siden. Så er brugeren logget ud - og er klar til at blive logget ind med en ny bruger

/mvh
</bole>
Avatar billede arne_v Ekspert
09. oktober 2011 - 22:11 #2
Hvordan kommer brugernavnene ind i a tabellen?

Hvornaar skal de fjernes igen?

Hvordan skal logout.php vide hvem der skal logges ud?
Avatar billede TumseMM Nybegynder
11. oktober 2011 - 18:38 #3
Hej olebole og arne_v

@arne_v her er det script der indsætter username ind til a.
og hvorfor skulle brugernavnene fjernes?


<?php


if($_POST['submit'])
{
    if($_SESSION['username'])
    {   
        if($_POST['tekst']!="")
        {
            mysql_query("INSERT INTO a (text,username,time,q_id,user_id) VALUES ('$_POST[tekst]','$_SESSION[username]',NOW(),'$_POST[q_id]','$_SESSION[user_id]')");
        }
        else
        {
        echo '<div style="position:absolute; top:110px;"><p style="color:red";>Husk at afslutte sætningen!</p></div>';
        $error;
        }
    }
    else
    {
        echo '<div style="position:absolute; top:110px;"><p style="color:red";>Du er ikke logget ind!</p></div>';
        $error;
    }
   
}


?>


Her er min simple kode til logout.php:


<?PHP

session_start();
session_destroy();

header('Location: Website.php');

exit();

?>
Avatar billede TumseMM Nybegynder
11. oktober 2011 - 18:39 #4
@olebole. Har prøvet at indsætte session_destroy(); lige før mit login script, men der står stadig bare alle brugernavnene klumpet sammen ? :(

Hvad mener du med at tømme $_session array?
Avatar billede TumseMM Nybegynder
11. oktober 2011 - 19:00 #5
havde du tænkt dig at "unset" den?
er det ikke farligt?
Avatar billede TumseMM Nybegynder
12. oktober 2011 - 15:11 #6
har den nu :) skulle bare indsætte:

$_SESSION['username']


i stedet for $username,
og jeg behøvede heller ikke queryen :)

tak for hjælpen ellers!
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester