Avatar billede kack Nybegynder
01. september 2004 - 19:58 Der er 10 kommentarer og
1 løsning

Rigtig brugernavn/password men ville ikke logge ind..

Jeg har fået lavet mig et lille community(takker dem der har hjulpet mig herinde fra). Problemet er bare at ligemeget om man skriver det rigtige brugernavn/password. Siger den det er forkert. Prøv at se det på www.kack.dk/madden (under community).

Php kode til login-ok.php:

<?php

require("config.php");
$login = &$HTTP_POST_VARS['login'];

if(empty($login)) {
    echo '&nbsp;Denne side kræver login adgang';
    exit();
    }

$brugernavn = &$HTTP_POST_VARS['brugernavn'];
$password = &$HTTP_POST_VARS['password'];


if(empty($brugernavn) OR empty($password)) {
    echo '&nbsp;Et af felterne er tomme'; 
    exit();
    }


mysql_connect($mysql_host, $mysql_user, $mysql_pw);
mysql_select_db($mysql_db);

$result_user = mysql_query("SELECT `brugernavn` FROM `users` WHERE `brugernavn` = '". $brugernavn ."' AND `password` = '". $password ."'") or die (mysql_error());

if(mysql_num_rows($result) == 1) {
$_SESSION["user"] = $brugernavn;
echo"Hej ". $_SESSION["user"];
}else{
echo"Sorry, forkert brugernavn eller password";
}
?>

Hvad er der galt?
Avatar billede taskmgr Nybegynder
01. september 2004 - 20:10 #1
Prøv lige med:

<?php
session_start(); // hvis du ikke har sat den i forvejen
require("config.php");
$login = $_POST['login'];

if(empty($login)) {
    echo '&nbsp;Denne side kræver login adgang';
    exit();
    }

$brugernavn = $_POST['brugernavn'];
$password = $_POST['password'];


if(empty($brugernavn) OR empty($password)) {
    echo '&nbsp;Et af felterne er tomme'; 
    exit();
    }


mysql_connect($mysql_host, $mysql_user, $mysql_pw);
mysql_select_db($mysql_db);

$result_user = mysql_query("SELECT `brugernavn` FROM `users` WHERE `brugernavn` = '". $brugernavn ."' AND `password` = '". $password ."'") or die (mysql_error());

if(mysql_num_rows($result) == 1) {
$_SESSION["user"] = $brugernavn;
echo"Hej ". $_SESSION["user"];
}else{
echo"Sorry, forkert brugernavn eller password";
}
?>
Avatar billede kack Nybegynder
01. september 2004 - 20:31 #2
Hmm nej.. det er stadig de samme..

Jeg har session_start(); i min index.php ...
Avatar billede taskmgr Nybegynder
01. september 2004 - 20:36 #3
Har du tjekket om informationerne bliver indsat korrekt i databasen?
Avatar billede kack Nybegynder
01. september 2004 - 20:42 #4
Ja.. Alle informationerne kommer ind i databasen..
Avatar billede taskmgr Nybegynder
01. september 2004 - 20:47 #5
Havde lige overset noget. Prøv med dette:

<?php
require("config.php");
$login = $_POST['login'];

if(empty($login)) {
    echo '&nbsp;Denne side kræver login adgang';
    exit();
    }

$brugernavn = $_POST['brugernavn'];
$password = $_POST['password'];


if(empty($brugernavn) OR empty($password)) {
    echo '&nbsp;Et af felterne er tomme'; 
    exit();
    }

mysql_connect($mysql_host, $mysql_user, $mysql_pw);
mysql_select_db($mysql_db);

$result = mysql_query("SELECT brugernavn FROM users WHERE brugernavn = '". $brugernavn ."' AND password = '". $password ."'") or die (mysql_error());
$row = mysql_fetch_array($result);

if(mysql_num_rows($result) == 1) {
$_SESSION["user"] = $row['brugernavn'];
echo"Hej ". $_SESSION["user"];
}else{
echo"Sorry, forkert brugernavn eller password";
}
?>
Avatar billede kack Nybegynder
01. september 2004 - 21:11 #6
Mange tak! Nu virker det sq :)

Gider du lige lave et svar? Så får du pointsne?
Avatar billede taskmgr Nybegynder
01. september 2004 - 21:12 #7
Ok, velbekommen :)
Avatar billede kack Nybegynder
01. september 2004 - 21:20 #8
Ehm.. Ikke at du skal skrive et svar til det her men:

Ved du hvorman man gør sådan at systemet ikke logger ud hele tiden? Så man ikke behøver at logge ing hvergang med trykker på "Login".
Avatar billede taskmgr Nybegynder
01. september 2004 - 21:25 #9
Du sætter eksempelvis en $_SESSION værdi som fortæller at brugeren er logget ind.

I ovenstående kan du f.eks. under $_SESSION["user"] = $row['brugernavn']; tilføje en linie med:
$_SESSION['logget_ind'] = 1;

Så kan du kontrollere på alle de sider hvor man skal være logget ind, om $_SESSION['logget_ind'] er lig med et (hvilket fortæller at brugeren er logget ind).

if($_SESSION['logget_ind'] == 1){
  // indhold som kun reg. brugere kan se
}else{
  // besked om at man skal være logget ind osv...
}
Avatar billede kack Nybegynder
01. september 2004 - 21:34 #10
Jeg siger sq mange tak igen! Kan desværre ikke give point igen, men håber du overlever! :) TAK!
Avatar billede taskmgr Nybegynder
01. september 2004 - 21:35 #11
Jeg lever ikke af point ;) Velbekommen igen, det var så lidt.
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

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Teknisk Projektleder til Forsvarets data- og AI-projekter

Capgemini Danmark A/S

Client Partner

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Senior specialister (Datacenter Network) til Forsvarets nye Digitale Backbone