Avatar billede agertz Nybegynder
02. november 2007 - 17:27 Der er 15 kommentarer og
1 løsning

Brugernavnet bliver glemt

Jeg har fået mit login system, og alt ser ud til at virke fint.
Jeg ville have sat et billede ind, et som er unikt for hver bruger.
Jeg har et link hvor billedet af ens "Habbo-bruger" vises, hvis bare brugerens navn indgår i linket.
Derfor har jeg bedt brugerne at angive sit  Habbo-navn ved oprettelsen, så den kan finde linket og udskrive billedet på loginsiden.

Jeg gør det således:

<?
session_start();
include("connect.php");

if(isset($_POST['login']))
{
    $brugernavn = mysql_real_escape_string($_POST['brugernavn']);
    $kodeord    = mysql_real_escape_string($_POST['kodeord']);

    $query = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn' AND kodeord = '$kodeord' LIMIT 1");
    $row = mysql_fetch_assoc($query);

    if(mysql_num_rows($query) == 1)
    {
        $_SESSION['logged_in'] = true;
    $_SESSION['username'] = $brugernavn;
        echo '';
    }
    else
    {
        $_SESSION['logged_in'] = false;
   
    }
}

if($_SESSION['logged_in'] == true)
{
    echo '<b>' . $_SESSION['username'] . '</b><br />';
   
    echo '<img src="http://www.habbo.dk/habbo-imaging/avatarimage?user='.$row[habbo].'&img_format=gif&action=wav&gesture=sml&direction=3&head_direction=3" div align="right">
    - Indstillinger<br>
    - Community<br>
    - Tagwall<br>
    - <a href="index.php?side=logud" style="text-decoration: none"><font color="#000000">Log ud</font></a><br>';
}
else
{
?>
<img src="http://www.agertz.dk/Habbo/billeder/frank_with_key.gif" div align="right">
<form method="post" action="index.php">
<br>B: <input type="text" name="brugernavn"><br />
K: <input type="password" name="kodeord"><br>
<input type="submit" name="login" value="Login!">
</form>
<a href="index.php?side=opret1" style="text-decoration: none"><font color="#000000">Opret bruger</font></a>

<?
}
?>

- Læg mærke til linie 32 i koden, hvor der i linket indgår row.

Lige når man er logget ind, virker alt fint. Men så snart man klikker på en undermenu viser den et "startbillede" - Altså det billede som blver vist hvis et brugernavn ikke indgår i linket.

Hvorfor det?
Glemmer den brugernavnet efter man er klikket væk fra siden?

- Hvis i vil se en test af problemet kan i gøre det på www.agertz.dk/Habbo og logge ind med brugernavnet "TEST" og koden "test".
Avatar billede nielle Nybegynder
02. november 2007 - 17:39 #1
Koden har kun fat i $row['happo'] på den der specifikke side. Derefter er værdien fra databasekaldet forsvundet.

Hvis du gemmer den i din session vil du derimod kunne "huske"´værdien mens at brugeren er logget ind.
Avatar billede agertz Nybegynder
02. november 2007 - 17:47 #2
Avatar billede nielle Nybegynder
02. november 2007 - 18:04 #3
Nok mere:

$_SESSION['habbo'] = $row['habbo'];

der hvor du har din anden login-kode, men ellers ja.
Avatar billede nielle Nybegynder
02. november 2007 - 18:07 #4
Ahh, du skal selvfølgelig også lige ´have fat på $row:

if (isset($_POST['login'])) {
    $brugernavn = mysql_real_escape_string($_POST['brugernavn']);
    $kodeord    = mysql_real_escape_string($_POST['kodeord']);

    $query = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn' AND kodeord = '$kodeord' LIMIT 1");
    $row = mysql_fetch_assoc($query);

    if (mysql_num_rows($query) == 1) {
        $row = mysql_fetch_assoc($query);

        $_SESSION['logged_in'] = true;
        $_SESSION['username'] = $brugernavn;
        $_SESSION['habbo'] = $row['habbo'];
    } else {
        $_SESSION['logged_in'] = false;
    }
}
Avatar billede agertz Nybegynder
02. november 2007 - 18:10 #5
Det virker stadig ikke

<?
session_start();
include("connect.php");

if(isset($_POST['login']))
{
    $brugernavn = mysql_real_escape_string($_POST['brugernavn']);
    $kodeord    = mysql_real_escape_string($_POST['kodeord']);

    $query = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn' AND kodeord = '$kodeord' LIMIT 1");
    $row = mysql_fetch_assoc($query);

    if(mysql_num_rows($query) == 1)
    {
        $_SESSION['logged_in'] = true;
    $_SESSION['username'] = $brugernavn;
    $_SESSION['habbo'] = $row['habbo'];
      echo ''; 
    }
    else
    {
        $_SESSION['logged_in'] = false;
   
    }
}

//Er brugeren allerede logget ind?
if($_SESSION['logged_in'] == true)
{
    echo '<b>' . $_SESSION['username'] . '</b><br />';
   
    echo '<img src="http://www.habbo.dk/habbo-imaging/avatarimage?user='.$row[habbo].'&img_format=gif&action=wav&gesture=sml&direction=3&head_direction=3" div align="right">
    - Indstillinger<br>
    - Community<br>
    - Tagwall<br>
    - <a href="index.php?side=logud" style="text-decoration: none"><font color="#000000">Log ud</font></a><br>';
}
else
{
?>
<img src="http://www.agertz.dk/Habbo/billeder/frank_with_key.gif" div align="right">
<form method="post" action="index.php">
<br>B: <input type="text" name="brugernavn"><br />
K: <input type="password" name="kodeord"><br>
<input type="submit" name="login" value="Login!">
</form>
<a href="index.php?side=opret1" style="text-decoration: none"><font color="#000000">Opret bruger</font></a>

<?
}
?>
Avatar billede nielle Nybegynder
02. november 2007 - 18:22 #6
Har du kigget på koden fra 02/11-2007 18:07:09?
Avatar billede agertz Nybegynder
02. november 2007 - 18:42 #7
Ja, nu virker det slet ikke :/
Avatar billede nielle Nybegynder
02. november 2007 - 18:43 #8
Hvordan ser din kode da ud?
Avatar billede agertz Nybegynder
02. november 2007 - 18:46 #9
<?
session_start();
include("connect.php");

if (isset($_POST['login'])) {
    $brugernavn = mysql_real_escape_string($_POST['brugernavn']);
    $kodeord    = mysql_real_escape_string($_POST['kodeord']);

    $query = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn' AND kodeord = '$kodeord' LIMIT 1");
    $row = mysql_fetch_assoc($query);

    if (mysql_num_rows($query) == 1) {
        $row = mysql_fetch_assoc($query);

        $_SESSION['logged_in'] = true;
        $_SESSION['username'] = $brugernavn;
        $_SESSION['habbo'] = $row['habbo'];
echo '';
    } else {
        $_SESSION['logged_in'] = false;
    }
}
//Er brugeren allerede logget ind?
if($_SESSION['logged_in'] == true)
{
    echo '<b>' . $_SESSION['username'] . '</b><br />';
   
    echo '<img src="http://www.habbo.dk/habbo-imaging/avatarimage?user='.$row[habbo].'&img_format=gif&action=wav&gesture=sml&direction=3&head_direction=3" div align="right">
    - Indstillinger<br>
    - Community<br>
    - Tagwall<br>
    - <a href="index.php?side=logud" style="text-decoration: none"><font color="#000000">Log ud</font></a><br>';
}
else
{
?>
<img src="http://www.agertz.dk/Habbo/billeder/frank_with_key.gif" div align="right">
<form method="post" action="index.php">
<br>B: <input type="text" name="brugernavn"><br />
K: <input type="password" name="kodeord"><br>
<input type="submit" name="login" value="Login!">
</form>
<a href="index.php?side=opret1" style="text-decoration: none"><font color="#000000">Opret bruger</font></a>

<?
}
?>
Avatar billede nielle Nybegynder
02. november 2007 - 18:50 #10
Ligger habbo¨navnet ikke gemt i brugere-tabbellen?
Avatar billede agertz Nybegynder
02. november 2007 - 18:51 #11
Jo
Avatar billede nielle Nybegynder
02. november 2007 - 18:58 #12
Sådan:

<?
session_start();
include("connect.php");

if (isset($_POST['login'])) {
    $brugernavn = mysql_real_escape_string($_POST['brugernavn']);
    $kodeord    = mysql_real_escape_string($_POST['kodeord']);

    $query = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn' AND kodeord = '$kodeord' LIMIT 1");

    if (mysql_num_rows($query) == 1) {
        $row = mysql_fetch_assoc($query);
        $_SESSION['logged_in'] = true;
        $_SESSION['username'] = $brugernavn;
        $_SESSION['habbo'] = $row['habbo'];
    } else {
        $_SESSION['logged_in'] = false;
    }
}
// Er brugeren allerede logget ind?
if ($_SESSION['logged_in'] == true) {
    echo '<b>' . $_SESSION['username'] . '</b><br />';
   
    echo '<img src="http://www.habbo.dk/habbo-imaging/avatarimage?user=' . $_SESSION['habbo'] . '&img_format=gif&action=wav&gesture=sml&direction=3&head_direction=3" div align="right">
        - Indstillinger<br>
        - Community<br>
        - Tagwall<br>
        - <a href="index.php?side=logud" style="text-decoration: none"><font color="#000000">Log ud</font></a><br>';
} else {
?>
    <img src="http://www.agertz.dk/Habbo/billeder/frank_with_key.gif" div align="right">
    <form method="post" action="index.php">
    <br>B: <input type="text" name="brugernavn"><br />
    K: <input type="password" name="kodeord"><br>
    <input type="submit" name="login" value="Login!">
    </form>
    <a href="index.php?side=opret1" style="text-decoration: none"><font color="#000000">Opret bruger</font></a>
<?
}
?>
Avatar billede agertz Nybegynder
02. november 2007 - 19:00 #13
Ja :-)

Tusinde tak :-)

Opret venligst et svar, hvis du ønsker dine point :P
Avatar billede nielle Nybegynder
02. november 2007 - 19:02 #14
Svar :^)
Avatar billede agertz Nybegynder
02. november 2007 - 19:04 #15
Og dine point :-)

Tak igen :)
Avatar billede nielle Nybegynder
02. november 2007 - 19:07 #16
Selv tak :^)
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