Avatar billede woowii Nybegynder
06. juli 2005 - 02:08 Der er 7 kommentarer og
1 løsning

Include - som ikke bliver included

Hej,

Jeg har siddet og rodet med et admin system og dertil hører jo et login system. Jeg besluttede mig for at 'auto-login' skulle være en mulighed - altså havde jeg brug for cookies. Cookies virker fint, de bliver sat rigtigt. Jeg skal selvfølgelig tjekket om folk har sat den cookie eller ej, derfor har jeg i toppen af forsiden lavet en 'include "Include/tjekcookie.php"'. Problemet er dog at siden ikke bliver inkluderet, rigtigt i hvert fald - jeg bliver ikke logget ind automatisk. Hvis jeg manuelt går ind på tjekcookie.php og går tilbage til forsiden er jeg logget ind - så koden er altså fin.

Koden til forsiden ser således ud:
<?php
session_start();
include "Include/connect.conf";
include "Include/text.php";
include "Include/tjekcookie.php";

?>

<head>
.......

Hvordan skal jeg få inkluderet tjekcookie.php så folk kan blive logget ind automatisk? Eller skal jeg gøre noget helt andet? ;)
Avatar billede jaw Nybegynder
06. juli 2005 - 02:13 #1
Jeg er ikke helt sikker på om det vil ændre noget, for hvis den ikke kan finde filen burde den komme med en fejl af en art, men prøv lige: include("./Include/tjekcookie.php");
Avatar billede woowii Nybegynder
06. juli 2005 - 02:25 #2
Ingen forskel. Filen ligger der - det er 100%, jeg har tjekket stien 100 gange og som du kan se har jeg to includes fra samme mappe ligeover, som virker fint. :)
Avatar billede jaw Nybegynder
06. juli 2005 - 02:29 #3
Regnede faktisk heller ikke med at det ville give nogen forskel. Hvad hvis du i din tjekcookie.php laver en udskrivning der kan bevise, at cookierne bliver sat korrekt, f.eks. efterfulgt af en exit; så du kan se om de bliver sat?

Og måske problemet slet ikke ligger i din tjekcookie.php, men nærmere hvad der sker efter at den er blevet inkluderet...
Avatar billede woowii Nybegynder
06. juli 2005 - 03:25 #4
Som sagt, bliver man logget ind som man skal hvis man går direkte ind på tjekcookie.php. Så, cookie og koden er fin - problemet er bare at få det inkluderet. :)
Avatar billede jaw Nybegynder
06. juli 2005 - 10:56 #5
Den bliver inkluderet, ellers ville php fortælle dig det. Men hvis du ikke vil prøve, så får jeg ret svært ved at hjælpe dig :) Du må smide de 2 filer så jeg selv kan afprøve det, hvis du vil have mere hjælp...
Avatar billede woowii Nybegynder
06. juli 2005 - 13:34 #6
tjekcookie.php:
----------
<?php
session_start();

$db = mysql_connect("localhost","apemx_net","XXXXXXX") or die ("Desværre ingen forbindelse til databasen");

mysql_select_db("apemx_net", $db) or die ("Kunne ikke vælge databasetabel");

$cookie_tjek = mysql_query("SELECT navn, password FROM havnen_user WHERE navn='$_COOKIE[brugernavn]' AND password='$_COOKIE[password]'") or die ("Kunne ikke vælge felter i database-tabellen");

if (isset($_COOKIE['brugernavn']) && mysql_num_rows($cookie_tjek) != 0) {

setcookie("brugernavn", $_COOKIE['brugernavn'], time()+922752000);

$_SESSION['brugernavn'] = $_COOKIE['brugernavn'];
}
?>
-----------

Koden til den anden side står i mit første indlæg - det der er relevant i hvert fald, skulle jeg mene. :)
Avatar billede woowii Nybegynder
06. juli 2005 - 13:46 #7
Prøvede lige at lave en echo nederst på tjekcookie.php siden. Den tekst bliver vist fint. Men stadig bliver man ikke logget ind, medmindre man manuelt går ind på siden. Noget underligt noget. :o
Avatar billede woowii Nybegynder
06. juli 2005 - 14:44 #8
Fandt selv fejlen. Havde lagt filen der satte cookien i /Include mappen også, og det gjorde at den ikke ville virke i index - fandme en dum fejl, godt nok længe siden jeg har rodet med cookies. ;)
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