Avatar billede daft Nybegynder
23. december 2004 - 08:50 Der er 21 kommentarer og
1 løsning

Fejl første gang man logger ind fra en ny computer

Mit log ind script finder ud af at udregne en kunde's rabat, når man logger ind på siden, men hvis man gør det fra en computer, som ikke har været logget ind før, så kommer der en fejlmelding:

Notice: Undefinde index $_SESSION["security_properties"] in security1.php on line 14.

Dette sker ikke anden gang man logger ind fra den samme computer.
Er der nogle af jer, som ved, hvad problemet er?
Vedlægger lige security1.php og udtræk scripted result.php.:

security1.php
-------------
<?php
session_start();

    function securityUserActive()
    {
        if (securityGetProperty("password") != 0)
            return true;
        else
            return false;
    }

    function securityGetProperty($key)
{
  return $_SESSION["security_properties"][$key];
}


    function securityLogin($dbName, $password, $username)
    {
        $loginOk = false;

        $sql = "SELECT username,password,rabat FROM bruger WHERE password = '$password' AND username='$username'";
        $res = mysql_db_query($dbName, $sql);
        if ( mysql_num_rows($res) == 0 )
        {
            die("Fejl ved login: Du har indtastet et forkert password eller brugernavn");
        }
       
        if ($row = mysql_fetch_array($res))
        {
            $security_properties = Array();
            $security_properties["password"] = $row["password"];
            $security_properties["username"] = $row["username"];
            $security_properties["rabat"] = $row["rabat"];
            $loginOk = true;
        }
        mysql_free_result($res);

        if ($loginOk)
        {
            $_SESSION["security_properties"] = $security_properties;
            return true;
        }
        return false;
    }

    function securityLogoff()
    {
        session_destroy();
    }
?>

result.php
----------
<?php

require_once("security1.php");
?>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html">
<meta name="GENERATOR" content="DBTools DBManager 2.0">
<title>Results</title>
<body text="#000000" link="#0000EE" vlink="#000000" alink="#3366FF" bgcolor="#eefffa">
<?php
  $db = mysql_connect("localhost", "xxxx", "xxxx");
  if( !$db )
  {
        die("Error connecting to the Server");
        exit;
  }
  $result = mysql_select_db("xxxx", $db);
  if( !$result )
  {
        die("Error selecting Database");
        exit;
  }
?>

<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="1" width="100%">
<?php
    $query  = "
    SELECT
        varekatalog.varenummer,
        varekatalog.varenavn,
        varekatalog.pris,
        varekatalog.billed,
        varekatalog.Sbilled
    FROM
        varekatalog
    WHERE
        kataloggruppe='10.25' OR kataloggruppe='10.26'
    ORDER BY
        varenavn ASC";

    $result = mysql_query($query,$db);
    if( !$result )
    {
        die("Error executing query");
    }
    echo "<tr>";
    echo "<td align=CENTER bgcolor='#000000'><font face='Arial' size='2' color='#FFFFFF'>Billede</font></td>";
    echo "<td align=CENTER bgcolor='#000000'><font face='Arial' size='2' color='#FFFFFF'>Varenummer</font></td>";
    echo "<td align=CENTER bgcolor='#000000'><font face='Arial' size='2' color='#FFFFFF'>Navn</font></td>";
    echo "<td align=CENTER bgcolor='#000000'><font face='Arial' size='2' color='#FFFFFF'>Nettopris</font></td>";
    echo "</tr>";
    $nrows = mysql_num_rows($result);
    $row  = 0;
    while( $row < $nrows )
    {
        $varenummer = mysql_result($result,$row,"varenummer");
        $varenavn = mysql_result($result,$row,"varenavn");       
        $pris = mysql_result($result,$row,"pris") - (mysql_result($result,$row,"pris")* securityGetProperty("rabat"));
        $pris = number_format($pris, 2, ',', '.');
        $billed = mysql_result($result,$row,"billed");
        $Sbilled = mysql_result($result,$row,"Sbilled");
        echo "<tr>";
        echo " <td align='LEFT' bgcolor='#eefffa'><font face='Arial' size='2' color='#000000'><a href='$Sbilled' target='_blank'><img src='$billed' alt='[klik her for stort billede]' border=´0'></a></font></td>";
    echo " <td align='LEFT' bgcolor='#eefffa'><font face='Arial' size='2' color='#000000'>".$varenummer."</font></td>";
    echo " <td align='LEFT' bgcolor='#eefffa'><font face='Arial' size='2' color='#000000'>".$varenavn."</font></td>";
    echo " <td align='RIGHT' bgcolor='#eefffa'><font face='Arial' size='2' color='#000000'>".$pris."</font></td>";
    echo "</tr>";
    $row++;
    }
    mysql_free_result($result);
    mysql_close();
?>

</table>
</center>
</div>
</body>
</html>

:-)
Avatar billede erikjacobsen Ekspert
23. december 2004 - 09:01 #1
Noget i retning af

function securityGetProperty($key) {
  if (isset($_SESSION["security_properties"][$key])) {
    return $_SESSION["security_properties"][$key];
  } else {
    return 0;
  }
}
Avatar billede daft Nybegynder
23. december 2004 - 09:21 #2
Mit script virker i hvert fald, men kan jeg bede dig om en tjeneste?
Jeg har ikke adgang til en computer, som ikke har været logget på før.
Kan jeg få dig til at gå ind på www.vetgros.dk og logge ind med brugernavn:99999999 og password:88888888.
Hvis du bruger en <option> på produktlisten og så lige klikker på et af de link som kommer frem, så er det der, at fejlen normalt kommer.

:-)
Avatar billede erikjacobsen Ekspert
23. december 2004 - 09:24 #3
Logge ind - hvor?
Avatar billede sw_red_6 Nybegynder
23. december 2004 - 09:24 #4
Hvad har du optimeret den hjemmeside til? den er i hvert fald for stor til 1024*768.
Jeg loggede ind og trykkede rundt på de forskellige ting uden nogen fejl.
Avatar billede daft Nybegynder
23. december 2004 - 09:25 #5
På siden www.vetgross.dk i nederste højre hjørne.

:-)
Avatar billede daft Nybegynder
23. december 2004 - 09:27 #6
Aner ikke hvad den er optimeret til. Hvordan finder man ud af det? Jeg har bare lavet den i HTML-kit.

:-)
Avatar billede erikjacobsen Ekspert
23. december 2004 - 09:27 #7
Forstår ikke - der er ikke noget i nederste højre hjørne.
Avatar billede sw_red_6 Nybegynder
23. december 2004 - 09:28 #8
hvad er jeres skærmopløsning?
Avatar billede daft Nybegynder
23. december 2004 - 09:31 #9
Til Erik> Kan du stadig ikke se log ind? Har prøvet at flytte den op på siden.

Til sw red 6> Skærmopløsningen er på 1024*768

:-)
Avatar billede sw_red_6 Nybegynder
23. december 2004 - 09:34 #10
hmmmm, det virker som om siden er for stor til at se ordentligt i 1024*768
prøv at lave den "lidt" om så den er perfekt i 800*600 hvis det kan lade sig gøre. eller også så sørg for at der er scrollbars på alle dine frames
Avatar billede erikjacobsen Ekspert
23. december 2004 - 09:35 #11
Nej, jeg kan ikke se noget med login overhovedet. Men du fik tilsyneladende løst dit
problem. Det andet skal du nok også gøre noget ved. Prøv med forskellige browsere.
Avatar billede daft Nybegynder
23. december 2004 - 09:37 #12
Der er scrollbars på den venstre og den midterste ramme. Måske skulle jeg også lave en i de andre rammer. Hader bare, at have for mange scrollbars på en side.
:-)
Avatar billede sw_red_6 Nybegynder
23. december 2004 - 09:38 #13
hvis der er for mange scrollbars på en side er det fordi den ikke er lavet ordentligt til den opløsning du bruger
Avatar billede daft Nybegynder
23. december 2004 - 09:39 #14
Til Erik> Det lyder vildt mærkeligt.
Men pointene er dine, da mit problem åbenbart er løst.
Smider du lige et svar?
God jul

:-)
Avatar billede erikjacobsen Ekspert
23. december 2004 - 09:39 #15
scrollbars - næh ikke kønt. Men frames er heller ikke kønt.
Avatar billede erikjacobsen Ekspert
23. december 2004 - 09:40 #16
Nej tak, jeg samler slet ikke på point.
Avatar billede daft Nybegynder
23. december 2004 - 09:40 #17
Til sw red 6> Er det noget du kan hjælpe mig med? Skal nok oprette et nyt spørgsmål med point til dig.

:-)
Avatar billede sw_red_6 Nybegynder
23. december 2004 - 09:41 #18
jeg kan godt hjælpe med det, men ikke på den her side af nytåret
Avatar billede daft Nybegynder
23. december 2004 - 09:48 #19
Det går desværre ikke. Den skal være færdig idag. Det er min sidste dag i praktik.
Ellers mange tak.
Vil gerne give pointene til dig, siden Erik ikke vil have dem, og du gik ind på siden og tjekkede den for mig.

:-)
Avatar billede sw_red_6 Nybegynder
23. december 2004 - 09:49 #20
tag dem bare selv, jeg har de point jeg skal bruge :-)
Avatar billede daft Nybegynder
23. december 2004 - 09:51 #21
Okay, så løber jeg da ikke helt tom for point. Prøver at se om der er nogle som kan hjælpe mig på (D)HTML.

God jul.

;-)
Avatar billede daft Nybegynder
23. december 2004 - 09:51 #22
Ups....
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