---
title: "inloggningssystem"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/102631-inloggningssystem/page4"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "silfver"
published: "2004-04-29T13:09:17.000Z"
updated: "2004-05-06T20:27:19.000Z"
replies: 73
views: 1327
page: 4
pages: 4
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/102631-inloggningssystem"
---

# inloggningssystem

_Sida 4 av 4._

## #61 — filipbh, 2004-05-06T16:40Z

Det var lite "måsvingar" som saknades...

```php
if($_POST['login_button']) {

$antalhits=0;
$_POST['loginpass'] = md5($_POST['loginpass']);
$open = mysql_connect ("localhost", "user","pass");
$sql = "SELECT username,password FROM users WHERE username='".$_POST['loginname']."'";
$result = mysql_db_query("databas","$sql");

while($data=mysql_fetch_array($result)){

if($data['username']==$_POST['loginname']){

    if($data['password']==$_POST['loginpass']){

               echo "Du loggas vidare";
               echo("<script language=JavaScript>");
               echo("self.location.replace(sida.php')");
               echo("</script>");
}
else
echo "Det gick inte att fullfölja inloggningen";
  }
 }
if($antalhits!=1)
echo "Det gick inte att fullfölja inloggningen";
}
```

Tror det fungerar... Ska sticka nu men kan nog fortsätta med hjälp senare ikväll... Tjabba

Permalänk: https://www.webforum.nu/p/1342293

## #62 — silfver, 2004-05-06T16:53Z

Man kommer in på sidan, även om man inte loggat in. Hur ska man göra för att undvika det?
<http://silfver.se/login/> /start.php för att testa loginfunktionen. test/test

Sen man måste ju kunna logga ut också... :D För nu är man fast på sidan. Hehe. Och hur gör man för att använda krypterade lösenord? Jag tog bort den strängen, så funkade det sen. Är det krångligt att använda sånt? Eller smidigt? Låter ju säkrare.

Permalänk: https://www.webforum.nu/p/1342300

## #63 — filipbh, 2004-05-06T18:33Z

Är det inte bättre att ha inloggningssidan på index.php istället? För att servern tar ju index först. Och index.php som du har nu blir start.php istället. Skriver man då silfver.se/login/ kommer man ju direkt till inloggningen... I inloggningsfilen får du även göra så att användarnamnet och lösenordet sparas i sessioner. För att kolla alla om man har loggat in måste du ha en fil som kollar om sessioner finns. Finns de inte kommer man till index.php, annars ser man den sida man skulle besöka. Ang. krypterade lösenord tycker jag det är bra att ha OM någon skulle komma åt databasen.

Permalänk: https://www.webforum.nu/p/1342326

## #64 — silfver, 2004-05-06T18:36Z

> **filipbh skrev:**
>
> Är det inte bättre att ha inloggningssidan på index.php istället? För att servern tar ju index först. Och index.php som du har nu blir start.php istället. Skriver man då silfver.se/login/ kommer man ju direkt till inloggningen... I inloggningsfilen får du även göra så att användarnamnet och lösenordet sparas i sessioner. För att kolla alla om man har loggat in måste du ha en fil som kollar om sessioner finns. Finns de inte kommer man till index.php, annars ser man den sida man skulle besöka. Ang. krypterade lösenord tycker jag det är bra att ha OM någon skulle komma åt databasen.

Jo, givetvis är det bättre att ha inloggningen på index.php. Men man kan ju fortfarande nå, start.php  om man inte löser det på något smidigt sätt. Hur man skapar sessioner har jag ingen aning om hur man gör. Man betyder det då? Kan man inte bara skriva require: login; eller nåt? :p

Permalänk: https://www.webforum.nu/p/1342330

## #65 — filipbh, 2004-05-06T19:02Z

Så här skapar du en session:

```php
@session_start();
@session_register("user");
@session_register("pass");
@$_SESSION['user'] = $_POST['loginname'];
@$_SESSION['pass'] = $_POST['loginpass'];
```

Filen som kollar om du är inloggad kan du t.ex. döpa till checkinloggad.php. I den skriver du t.ex.:

```php
if (!$_SESSION[user]) {
echo "Du har inte loggat in!";
               echo("<script language=JavaScript>");
               echo("top.location.replace('index.php')");
               echo("</script>");
}

if (!$_SESSION[pass]) {
echo "Du har inte loggat in!";
               echo("<script language=JavaScript>");
               echo("top.location.replace('index.php')");
               echo("</script>");
}
```

Jag har även en kolumn i user-tabellen som heter online. I filen som kollar sessionerna kollas även om online är 1 på den inloggade användarens namn.

Är inte så bra på att förklara alltid men hoppas att du förstår. Du kan adda mig på MSN eller ICQ för snabbare hjälp.

Permalänk: https://www.webforum.nu/p/1342341

## #66 — silfver, 2004-05-06T19:17Z

Okay, så vart ska man placera den översta koden? Skall den ligga på inloggningssidan (index.php) eller ska den ligga i start.php dit man loggat in?

Och koden som kollar om man är inloggad, skall den inkluderas i alla filer eller? Du hade inte skrivit din msn där, du får gärna skicka ett pm till mig så kan vi ta allting där. :)

Permalänk: https://www.webforum.nu/p/1342354

## #67 — filipbh, 2004-05-06T19:25Z

Ja, den översta lägger du precis innan man skickas vidare till start.php. Inkludera den filen överst i samtliga filer utom index.php.

Permalänk: https://www.webforum.nu/p/1342360

## #68 — silfver, 2004-05-06T19:40Z

> **filipbh skrev:**
>
> Ja, den översta lägger du precis innan man skickas vidare till start.php. Inkludera den filen överst i samtliga filer utom index.php.

Hur ska jag lägga den översta i koden? Spelar det någon roll vart i koden jag lägger den? Och vart skulle jag placera den andra koden? alla sidor UTOM i index?

Permalänk: https://www.webforum.nu/p/1342366

## #69 — filipbh, 2004-05-06T19:47Z

Inloggningssidan skulle kunna se ut så här:

```php
if($_POST['login_button']) {

$antalhits=0;
$_POST['loginpass'] = md5($_POST['loginpass']);
$open = mysql_connect ("localhost", "user","pass");
$sql = "SELECT username,password FROM users WHERE username='".$_POST['loginname']."'";
$result = mysql_db_query("databas","$sql");

while($data=mysql_fetch_array($result)){

if($data['username']==$_POST['loginname']){

    if($data['password']==$_POST['loginpass']){

@session_start();
@session_register("user");
@session_register("pass");
@$_SESSION['user'] = $_POST['loginname'];
@$_SESSION['pass'] = $_POST['loginpass'];

               echo "Du loggas vidare";
               echo("<script language=JavaScript>");
               echo("self.location.replace(sida.php')");
               echo("</script>");
}
else
echo "Det gick inte att fullfölja inloggningen";
  }
 }
if($antalhits!=1)
echo "Det gick inte att fullfölja inloggningen";
}
```

och 

```php
if (!$_SESSION[user]) {
echo "Du har inte loggat in!";
               echo("<script language=JavaScript>");
               echo("top.location.replace('index.php')");
               echo("</script>");
}

if (!$_SESSION[pass]) {
echo "Du har inte loggat in!";
               echo("<script language=JavaScript>");
               echo("top.location.replace('index.php')");
               echo("</script>");
}
```

placeras i checkinloggad.php eller vad du nu döpt den till.

Om du lägger den checkfilen på indexsidan så kommer index.php bara att loopas runt och runt. Sidan öppnas, den känner av att man inte är inloggad och skickar en till index.php. Då känner den av att man inte är inloggad och skickar en yttligare en gång till index.php och så fortsätter det tills du ändrar filen. Förstår du?

Permalänk: https://www.webforum.nu/p/1342368

## #70 — silfver, 2004-05-06T20:08Z

> **filipbh skrev:**
>
> Förstår du?

Jag förstod precis. Lyckas dessutom! :L <http://silfver.se/login/start.php> \<- testa. :)

Hm. Nej det funkade inte föresten ser jag nu. Jag la in koden

```php
<?php

include "checkinloggad.php";

?>
```

i start.php så gick det inte logga in. Den loopades som du sa. Gjorde jag fel likt förbannat? La in den includen i alla utan i index.php. (Index.php är ju den som man loggar in från nu. Ändrade när du sa det innan.)

**r/** men man kunde inte gå in på login/start.php för då kom man till loginsidan. det var därför jag trodde det funkade. men så gick det ju inte logga in.

**r/ igen** såg att det spelar ingen roll vad man skriver för lösenord. man kommer in ändå!

Permalänk: https://www.webforum.nu/p/1342382

## #71 — filipbh, 2004-05-06T20:17Z

För att logga ut skriver du

```php
session_start();
session_unset();
session_destroy();
```

i loggaut.php-sidan

Ändra include-koden till 

```php
require("checkinloggad.php");
```

Require fungerar bättre för där måste filen som ska inkluderas finnas för att sidan ska visas. Borde fungera bättre om du skriver så. Du kan även skriva:

```php
include("checkinloggad.php");
```

men som sagt; tycker require är bättre.

Permalänk: https://www.webforum.nu/p/1342387

## #72 — silfver, 2004-05-06T20:22Z

Fixat. Såg du det jag skrev där uppe? :p Vet inte hur jag lyckas göra fel på allt jag ska göra. Men jag skyller på att jag är nybörjare.  :r

Permalänk: https://www.webforum.nu/p/1342389

## #73 — filipbh, 2004-05-06T20:25Z

Hehe ingen fara.. Vet man allt från början kan man ju inte lära sig. Och som jag läste tidigare här på wF. Frågar ingen så finns snart inte wF längre. Fått mitt PM?

Permalänk: https://www.webforum.nu/p/1342391

## #74 — silfver, 2004-05-06T20:27Z

> Det finns inga nya meddelanden sedan ditt senaste besök.

Nix. :(

Permalänk: https://www.webforum.nu/p/1342393

---

Tråden på webben: https://www.webforum.nu/amne/php/102631-inloggningssystem/page4  
Föregående sida: https://www.webforum.nu/amne/php/102631-inloggningssystem/page3.md
