Avatar billede bqnke Nybegynder
29. december 2015 - 22:57 Der er 4 kommentarer og
1 løsning

Mine sessions virker ikke

Den reagere ikke ortenligt, og kan ikke logge af, kan i sige mig hvad der går galt?

<?php
   
    include('config.php');
   
    session_start();
    if (isset($_POST['submit'])){
   
   
   
    $username = $_POST['username'];
    $password = $_POST['password'];
   
   

    $sql = "SELECT * FROM `users` WHERE `username` = '$username' AND `password` = '$password' LIMIT 1";
    $result = $conn->query($sql);
    if (!$result->num_rows == 1) {
        echo "<br><p><center>E-mail og kodeord passer ikke sammen</p></center><br>";
    } else {
            $_SESSION['loggedin'] = 1;
        echo "<br><p><center>Det lykkedes at logge ind</p></center><br>";
       
              }
}


?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <title></title>
  <meta http-equiv="content-type" content="charset=iso-8859-1" />
    <link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
    <div id="topmenu">
        <?php
            if ($_SESSION['loggedin'] = 1) {
        ?>
        <div id="login">
        Velkommen du er nu logget ind.
        <a class="opretbruger" href="logaf.php">Log af</a>
        </div>
        <?php
        }else{
          ?>
            <div id="login">
        <form action="<?=$_SERVER['PHP_SELF']?>" method="post">
                <a class="opretbruger" href="opret.php">Opret bruger</a>
                <input id="username" type="text" name="username" value="E-mail" />
                <input id="password" type="password" name="password" value="Kodeord" />
                <input name="submit" type="submit" value=" Login " />
            </form>
        </div>
        <?php
        }
        ?>

logaf.php

session_unset();
$_SESSION = array();
session_destroy();
Avatar billede olsensweb.dk Ekspert
29. december 2015 - 23:16 #1
er ikke begyndt at kigge på coden, men det der slår mig
ret som minimum
if ($_SESSION['loggedin'] = 1) {
skal være
if ($_SESSION['loggedin'] == 1) {

1 lighedstegn = tildeling af værdi
2 lighedstegn = sammenligning på værdi
3 lighedstegn = sammenligning på værdi og datatype
Avatar billede bqnke Nybegynder
29. december 2015 - 23:30 #2
Mange tak!! smid svar!
Avatar billede olsensweb.dk Ekspert
29. december 2015 - 23:42 #3
svar
30. december 2015 - 14:43 #4
Det er den, for mig selv, klassiske fejl, at glemme, at der skal to lighedstegn til det man i matematik bruger et lighedstegn til, at udtrykke 'lig med'.  En ekstra undskyldning (ud over matematikken) er at jeg er fra den tid hvor Pascal var undervisnings-programmerings sproget, og i Pascal bruges = til sammenligning og += til at tildele en værdi.
30. december 2015 - 14:44 #5
Undskyld, det er vist=: der i Pascal tildeler en værdi.
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

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