Avatar billede keplerdrengen Nybegynder
21. maj 2004 - 11:31 Der er 7 kommentarer og
1 løsning

mine sessions driller -_-

hejsa all.

Jeg sidder og bikser med et loginscript, der ved hjælp af sessions og min DB, skal smide min bruger vidre til forum - hvis personen er oprettet.

MEN!!!! det virker sgu ik ;/

////login//////

<form name="login" method="post" action="loginHandler.php">
    <table>
    <tr>
    <td> Her kan du logge ind i forummet, ellers skal du oprette dig <a href="opret_ny.php">her</a> først
    </td>
    </tr>
    </table>
    <table>
            <tr>
            <td>
                Brugernavn:
            </td>
            <td>
                <input type="text" name="user" size="15">
            </td>
        </tr>
        <tr>
            <td>
                Password:
            </td>
            <td>
                <input type="password" name="pass" size="15">
            </td>
            <td colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td>
                <input type="submit" name="login" value="Login">
            </td>
        </tr>
    </table>
</form>

///loginhandler////

<?php
// starter session
session_start();
include('config.php');
       
//sørger for at holde inf, hvis nu bruger refresh bagud, bug i IE6
header("Cache-control: private");
           
        if(!isset($_POST['login'])) { //Tester om brugeren kom fra  login.html
                  echo "Du skal komme fra login.php";
    }
    else   
    {
        $postbruger = $_POST['user'];
        $postpass = $_POST['pass']; //For læservenligheden overføres post variablerne til normale variabler
       
        $resultat = mysql_query("SELECT * FROM bruger WHERE b_brugernavn = '$_postpass' AND b_kodeord = '$_postbruger'");//Spørger efter ID

        $number = mysql_num_rows($resultat);//Tæller antaller af resultater
        if($number == 1) { //Hvis der kun er et resultat, bliver brugeren logget in
        $_SESSION['godkendt'] = 1;
        $_SESSION['user'] = $_postburger;
        $_SESSION['pass'] = $_postuser; //Sætter session variablerne
       
       
        echo "Du er nu logget ind";
        header( "location:index.php" );
        }
            else
        {
            echo "De indtastede oplysninger er ikke korrekte";
        }   
   
  }   
       
   
   
?>


Mit output er så "dine oplysninger er IKKE korrekte" - det er noget P** for brugeren ER oprettet i min db osv. så hvorfor Fa**** går min session ik igang ??
Avatar billede detox Nybegynder
21. maj 2004 - 12:29 #1
$_SESSION['user'] = $_postburger;
$_SESSION['pass'] = $_postuser;

skal måske være:

$_SESSION['user'] = $postbruger;
$_SESSION['pass'] = $postpass;
Avatar billede detox Nybegynder
21. maj 2004 - 12:35 #2
$resultat = mysql_query("SELECT * FROM bruger WHERE b_brugernavn = '$_postpass' AND b_kodeord = '$_postbruger'");

skal ligeledes være:

$resultat = mysql_query("SELECT * FROM bruger WHERE b_brugernavn = '$postpass' AND b_kodeord = '$postbruger'");
Avatar billede detox Nybegynder
21. maj 2004 - 12:38 #3
Iøvrigt må du ikke bruge echo inden header():

          echo "Du er nu logget ind";
          header( "location:index.php" );

Samlet vil det se sådan her ud:

<?php
// starter session
session_start();
include('config.php');
   
//sørger for at holde inf, hvis nu bruger refresh bagud, bug i IE6
header("Cache-control: private");
         
if(!isset($_POST['login'])) { //Tester om brugeren kom fra  login.html
    echo "Du skal komme fra login.php";
} else {
        $postbruger = $_POST['user'];
        $postpass = $_POST['pass']; //For læservenligheden overføres post variablerne til normale variabler
     
        $resultat = mysql_query("SELECT * FROM bruger WHERE b_brugernavn = '$postpass' AND b_kodeord = '$postbruger'");//Spørger efter ID

        $number = mysql_num_rows($resultat);//Tæller antaller af resultater
        if($number == 1) { //Hvis der kun er et resultat, bliver brugeren logget in
            $_SESSION['godkendt'] = 1;
            $_SESSION['user'] = $postbruger;
          $_SESSION['pass'] = $postpass; //Sætter session variablerne
          header( "location:index.php" );
        } else {
          echo "De indtastede oplysninger er ikke korrekte";
        } 
}
?>
Avatar billede keplerdrengen Nybegynder
21. maj 2004 - 12:42 #4
hey detox tak for alle dine comments, jeg har i mellemtiden fået det til at virke, ( bla ved det du siger)

du må gerne få points for det hvis du vil ;)
Avatar billede detox Nybegynder
21. maj 2004 - 12:45 #5
Hvis du selv har løst det, skal du selv tage pointene ;o)
Avatar billede keplerdrengen Nybegynder
21. maj 2004 - 13:37 #6
oki ;) gemmer dem til en anden god gang så, men tak for hjælpen - sikker på jeg får brug for det igen -_-
Avatar billede olebole Juniormester
22. maj 2004 - 12:57 #7
<ole>

keplerdrengen >> Så skal du lige svare og acceptere dit eget svar. Derved bliver spørgsmålet lukket og pointene tilbageført.
Ellers vil pointene stå som værende 'ude' - og spørgsmålet som åbent  ;o)

/mvh
</bole>
Avatar billede keplerdrengen Nybegynder
22. maj 2004 - 14:04 #8
svar
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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