Avatar billede sorensen_123 Nybegynder
09. april 2007 - 20:49 Der er 5 kommentarer og
1 løsning

Fejl i kode.

Hejsa,

Jeg har denne kode, og den får jeg fejl i:

<?
        include('includes/config.php');
    $username_try = $_POST['username_try'];
    $nypw = $_POST['password_try'];
    $pw = md5($nypw);

    $result = mysql_query("SELECT * FROM casemodusers WHERE username='".$username_try."' AND password='".$pw."'")or die(mysql_error());
    $num = mysql_num_rows($result);
    $row = mysql_fetch_array($result);

    if($num != 1){
        echo "<b>Fejl !</b><br>Fejl i brugernavn eller password!";
    }
    elseif($row['ban'] == "1"){
        echo "<b>Fejl !</b><br>Du er blevet bannet af en Admin eller CoAdmin. Du kan ikke logge ind. Kontakt webmasteren for forklaring.";
    }
    elseif($row['aktiveret'] == "0"){
        echo "<b>Fejl !</b><br>Din bruger er ikke aktiveret endnu.";
    }
    elseif($num >= 1 AND $row['ban']!=1){

        $username = $row['username'];
        $password = $row['password'];
        $userid = $row['id'];
        $admin = $row['admin'];

        $_SESSION['username'] = $username;
        $_SESSION['password'] = $password;
        $_SESSION['userid'] = $userid;
        $_SESSION['admin'] = $admin;

        header("Location: index.php");
    }

if($action=="kill_sess"){
    session_destroy();
    header("Location:index.php");
}
?>

Fejlen er ikke en PHP fejl, men den skriver kun
"Fejl !
Fejl i brugernavn eller password!"

Har tjekket det mange gange, og det burde altså virke!

Her er mit mysql dump, så i kan se hvordan tabellerne er sat op..
CREATE TABLE `casemodusers` (
  `id` int(4) NOT NULL auto_increment,
  `username` varchar(255) NOT NULL default '',
  `password` varchar(255) NOT NULL default '',
  `email` longtext NOT NULL,
  `realname` longtext NOT NULL,
  `ip` longtext NOT NULL,
  `createdate` longtext NOT NULL,
  `aktiveret` char(2) NOT NULL default '0',
  `admin` int(1) NOT NULL default '0',
  `ban` int(1) NOT NULL default '0',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;

--
-- Data dump for tabellen `casemodusers`
--

INSERT INTO `casemodusers` VALUES (6, 'Admin', 'da049492230f388e38fd73b85d25f682', 'kontakt@reanimation.dk', 'Elias', '127.0.0.1', '04.09.07', '1', 1, 0);


Nogen der kan gennemgå koden og rette fejl?
Avatar billede dkfire Nybegynder
09. april 2007 - 21:05 #1
Prøv at skrive $pw og $username_try ud sammen med din fejlmeddelse, så kan du sammenligne det med hvad der er i databasen.
Det ser ud til at den nemlig ikke finder din bruger, eller måske flere brugere.
Avatar billede tjaz Nybegynder
09. april 2007 - 22:25 #2
prøv at udskrive $num og se hvor mange resultater den finder
Avatar billede ralla Nybegynder
09. april 2007 - 22:27 #3
Når du definerer variablerne £username_try og $pw, kan du bare skrive:

$result = mysql_query("SELECT * FROM casemodusers WHERE username='$username_try' AND password='$pw'")or die(mysql_error());

det burde virke.
Avatar billede sorensen_123 Nybegynder
10. april 2007 - 14:06 #4
Arrgh.. Mit input hed brugernavn_try - og jeg ville hente brugernavnet fra username_try >_<...

Men erstattede min mysql query-kode med ralla's, så det må jo være ralla der får point. Smid svar, Ralla ;)
Avatar billede ralla Nybegynder
11. april 2007 - 09:33 #5
Svar :)
Avatar billede sorensen_123 Nybegynder
11. april 2007 - 14:12 #6
Tak for hjælp.
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