04. august 2007 - 20:32Der er
19 kommentarer og 1 løsning
satte variabler forsvinder i includede filer (uddybes)
Hejsa. Mit site fungerer ca. sådan her.//variabel navnene er lavet om for at lette det hele :)
man logger ind på login.php (med variablerne user og pass) så kommer man til index.php som først checker om der står noget i $user. Hvis der gør det starter den en session_start(); og sætter variablen $bruger til login navnet. ($user = $bruger) og includer derefter de sider som brugeren beder om (eks. info.php eller cart.php osv..) (SWITCH)
Mit problem er nu at efter jeg har startet en session og sat en variabel i den, kan jeg ikke trække den ud i de includede sider. skriver jeg eks. echo "Bruger: " . $bruger; //Bruger: Det er ret mærkeligt, men hvis nogen kender svaret så sig til jeg er lutter øren.
Spørgsmål er velkomne da det er lidt svært at forklare det hele så alle forstår det´, tror jeg.
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
Sådan gør jeg. men vil lige kikke på det du skrev og så melde tilbage. det satte lige tandhjulene igang :)
forresten hvad mener du med om det er et almindeligt session problem ?
Der vises kun index.php da den side jo includer alle de andre som $bruger skal vises på ? på login.php er der intet med sessions. den sender bare $user videre til index.php. ?
Jeg skal bare have registreret en global variabel så jeg altid uanset hvad på en hvilken som helst side der er inkluderet på index.php kan skrive echo $bruger; og så står ham der er logget ind's navn... :P
Jeg aner ikke hvad jeg har gjort siden jeg ikke kunne læse de 3 pas på'er :P må have været stiv eller noget hehe (nej bare rolig drikker ikke) men du har ret. skal nok bruge $_SESSION["navn"] = "noget"; fra nu af :). tak :)
du har løst mit problem tror jeg. bare kyl et svar så vi kan få den ko ud af verden :P
1) På alle reelle sider (ikke include) session_start(); øverst. Måske gør din PHP det allerede. 2) Hvor du ved hvem brugeren er: $_SESSION['bruger']='kurt', eller tilsvarende 3) Hvor du skal se hvem der er logget ind: $bruger=$_SESSION['bruger']; if ($bruger=='kurt') { ... }
Ok måske du lige hurtigt kan naile denher også for mig ?
<? include("DB.php"); $sql = "INSERT INTO pik ('patter') VALUES ('$patter')"; $query = mysql_query($sql) or die("<br><br>Kunne ikke skrive til databasen - Undskyld boss<br><br>" . mysql_error()); ?>
den får jeg:
Kunne ikke skrive til databasen - Undskyld boss
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''patter') VALUES ('hund')' at line 1
på. kan du se why ? så slap jeg for at finde svar på den også :P kan ikke se why den er gal. kan godt hente fra den database så connection er go nok.
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.