Det hele virkede inden jeg lagde linien <!--#include file="login.php"--> ind i filen page1.asp Men det betød samtidig, at man kunne komme ind på denne side uden at skulle skrive et brugernavn og password (se index.htm)
Ja...det virker desværre heller ikke....samme besked (øv) Hvis du prøver at logge dig på siden www.varde.nu med brugernavn: THG og password: kontor har du måske en idé mere til, hvad der kan være galt?
Friske øjne: på de sider du vil beskytte, kan du ikke inkludere login.php. De informationer du henter fra POST eksisterer kun én gang, det er når du submitter formen.
Du skal nok have noget session indblandet. Det har 65535 sikkert en løsning på
Jeg har lige prøvet at logge ind på siden, så det ser ud til at du fik det til at virke. Virker ihvertfald for mig her til morgen.
mht. sessions. Sessions er et sted hvor du opbevarer data midlertidigt for de enkelte brugere. Det kan f.eks. være en information over om brugeren er logget ind, hvilket brugernavn der er brugt etc. Generelt bruger man sessions der hvor bruger samme data flere steder i applikationen, så man kun behøver at hente den én gang.
Sessions varer som default 20mins. Dvs. hvis en bruger ikke logger ud så forsvinder den af sig selv efter 20mins.
Hvis vi så skal kigge på script. for at aktivere brug af sessions, skal du starte din php side med session_start(). Allerførste linie efter <?php. Dette giver siden mulighed for at bruge en session. Derefter skal du lægge de variabler op i session som du vil bruge. Det gøres ca. på samme måde som $_POST. Dvs. $_SESSION['user'] = $user.
Det giver os et script der ser sådan ud:
<?php session_start();
$user = $_POST['user']; $pass = $_POST['pass'];
// Brugernavn $us = "THG";
// Password $pa = "kontor";
$login = "$us$pa";
$data = "$user$pass";
if ($user == "") { die("Du skal indtaste et brugernavn"); }
if ($pass = "") { die("Du skal indtaste et password"); }
if ( $data == $login){ print(" <script language='javascript'> location.href='page1.asp' </script>");
// Hvis vi er her, så er vi logget rigtigt ind og lægger variabler i session $_SESSION['user'] = $user; $_SESSION['loggedin'] = true; } else { print(" <script language='javascript'> location.href='error.html' </script>"); } ?>
på den måde kan du på andre sider se om bruger er logget ind ved at lave en:
if($_SESSION['loggedin'] == true) { //... etellerandet. } else { //sandsynligvis redirect dem eller kom med fejlbesked. }
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.