Avatar billede venchil Nybegynder
20. oktober 2005 - 15:44 Der er 6 kommentarer og
1 løsning

PHP: loginsystem

Hvad er der galt her? Har virkelig prøvet alt, men den vil ikke give noget output, når jeg tester det... Jeg har en session_start i min layout-fil, som jeg inkluderer denne fil i:

<?php

$conn = mysql_connect("localhost", "username", "password");
mysql_select_db("database");

$username = $_REQUEST["username"];
$password = $_REQUEST["password"];

if (empty($username) || empty($password)) {
echo "Remember to fill in your username and password";
}

if (!empty($username) && !empty($password)) {

$query = mysql_query("SELECT * FROM rao_users WHERE username=$username);

if(mysql_num_rows($query) == '1')) {
$row = mysql_fetch_array($query);

if($row['password'] == $password) {
$_SESSION['username'] = $username;
echo "You're logged in!";
}
}
}

?>
Avatar billede rarw Nybegynder
20. oktober 2005 - 16:09 #1
<?php

$conn = mysql_connect("localhost", "username", "password");
mysql_select_db("database");

$username = $_REQUEST["username"];
$password = $_REQUEST["password"];

if (empty($username) || empty($password)) {
echo "Remember to fill in your username and password";
}

if (!empty($username) && !empty($password)) {

$query = mysql_query("SELECT * FROM rao_users WHERE username=$username);

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

if($row['password'] == $password) {
$_SESSION['username'] = $username;
echo "You're logged in!";
}
}
}

?>

Måske 8)?
Avatar billede venchil Nybegynder
20. oktober 2005 - 16:16 #2
Der er stadig ikke noget der virker :(... Andre forslag?
Avatar billede venchil Nybegynder
20. oktober 2005 - 18:02 #3
Er der ikke andre forslag???
Avatar billede nielle Nybegynder
20. oktober 2005 - 18:14 #4
Du mangler f.eks. at afslutte din SQL-sætning med et "-tegn. Deuden er det altod en god ide med noget fejl-håndtering:

<?php
$conn = mysql_connect("localhost", "username", "password");
mysql_select_db("database");

$username = $_REQUEST["username"];
$password = $_REQUEST["password"];

if (empty($username) || empty($password))
{
    echo "Remember to fill in your username and password";
}
else
{
    $query = mysql_query("SELECT * FROM rao_users WHERE username='$username'") or die(mysql_error());

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

        if ($row['password'] == $password)
        {
            $_SESSION['username'] = $username;
            echo "You're logged in!";
        }
    }
}
?>
Avatar billede nielle Nybegynder
20. oktober 2005 - 18:16 #5
Din SQL kan i øvrigt gøres lidt mere effektiv:

$query = mysql_query("SELECT * FROM rao_users WHERE username='$username' AND password='$password'") or die(mysql_error());
Avatar billede venchil Nybegynder
20. oktober 2005 - 19:16 #6
Har fundet en løsning selv... Tak iøvrigt... ingen af forslagene virkede :(
Avatar billede nielle Nybegynder
20. oktober 2005 - 19:54 #7
Hvordan kom din løsning så til at se ud?
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