Avatar billede horsmark Nybegynder
14. februar 2003 - 13:05 Der er 6 kommentarer og
1 løsning

session include fil

Istedet for at skrive det samme sessioncheck på alle admin-sider hvordan får jeg så lige en includefil til at gøre det for mig på den smarteste måde?
Avatar billede avminarm Juniormester
14. februar 2003 - 13:14 #1
du laver session tjekket i en fil. f,eks tjek.php og så includer du den på alle seder der skal beskyttes
Avatar billede avminarm Juniormester
14. februar 2003 - 13:15 #2
eller du kan lave en funktion tjek(){
if( noget session tjek ){
return true;
}else{
return false;
}
Avatar billede horsmark Nybegynder
14. februar 2003 - 13:15 #3
Kan du ikke skrive et lille eksempel eftersom jeg er php newbee - startede i mandags :-)
Avatar billede avminarm Juniormester
14. februar 2003 - 13:25 #4
jo da - her er noget som er snuppet fra sukos.dk - login script - dette ligger i er seperat fil som hedder tjeklogin.php og indeholder:

<?php
session_start();
if (!isset($_SESSION['Name'], $_SESSION['sessionnr']) || $_SESSION['sessionnr'] != session_id()) {
header("Location:ingen_adgang.php");
}
?>

på en side kan man så:
<?php
include "tjeklogin.php";
?>

Denne side hanter filen hver gang og hvis man ikke er logget ind bliver man sendt til siden "ingen_adgang.php"

Funktionen fungerer lidt på samme måde, men glem den lidt endnu hvis du er newbee - jeg var selv et godt stykke tid om at fatte de der funktioner ;o).
Avatar billede horsmark Nybegynder
14. februar 2003 - 13:32 #5
øhh jeg har efterhånden styr på at kalde mySQL basen med submittet logonnavn - kan du ikke kort skrive det script der skal til for at gøre den fra mySQL korrekt returnerede $user til en session?
Avatar billede avminarm Juniormester
14. februar 2003 - 14:17 #6
du kalder vel databasen med en formular ik? i forbindelse med database kaldet kan du gøre sådan:

$_SESSION['Name'] = $_POST['navn']; //dvs det navn du poster til databasen registerers naturligvis kun hvis navn og pass er ok noget i denne stil:

$tjek = mysql_query("SELECT navn, password FROM brugere WHERE navn='$_POST[navn]' AND password='$dopass'");

if(mysql_num_rows($tjek) != 0) { //hvis der findes en række registerers sessionsne

$_SESSION['sessionnr'] = session_id();
$_SESSION['Name'] = $_POST['navn'];

header("Location: velkommen.php");
exit;
}
Avatar billede horsmark Nybegynder
15. februar 2003 - 19:36 #7
det spiller - takker
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