Avatar billede Hansen_ Praktikant
06. oktober 2010 - 22:27 Der er 8 kommentarer og
1 løsning

Hjælp til at komme videre.

Hej alle kloge folk. :)

Jeg har brug for forståelse omkring - HVIS sand og HVIS Falsk værdi træder i kraft.

Jeg har fundet et allerede lavet script - men jeg har brug for - når login er godkendt - dvs sand, så bliver man vidersendt til en ny side, hvor login stadig er gældende, men hvor man herinde kan taste ny info ind.

Det sikkert super nemt for jer hajer, men for mig er det stadig lidt russisk. :)



<?php

require("config.php");
$login = &$HTTP_POST_VARS['login'];

if(empty($login)) {

    echo 'Denne side kræver login adgang'; }

    else {


$brugernavn = &$HTTP_POST_VARS['brugernavn'];

$password = &$HTTP_POST_VARS['password'];


if(empty($brugernavn) OR empty($password)) { //Her tjekkes om ET af felterne er tomme.

    echo 'Et af felterne er tomme'; }   

    else {

mysql_connect($mysql_host, $mysql_user, $mysql_pw);

mysql_select_db($mysql_db);

$result_user = mysql_query("select brugernavn from dennis_brugere where brugernavn = '$brugernavn'")

or die (mysql_error());

$result_pw = mysql_query("select password from dennis_brugere where password = '$password'")

or die (mysql_error()); 


$array_user = mysql_fetch_array($result_user);

$array_pw = mysql_fetch_array($result_pw);

if($array_user['brugernavn'] == $brugernavn AND $array_pw['password'] == $password) {

  echo 'korrekt password';

}

else {

echo 'forkert password';

}

}

}


?>
Avatar billede wanze Nybegynder
06. oktober 2010 - 22:51 #1
Du skal have gemt noget information så serveren ved, at du har logget ind. Dette gøres nemmest med sessions.

Det finder du en guide til her: http://phpartikler.dk/artikler/sessions.php
Avatar billede Hansen_ Praktikant
06. oktober 2010 - 23:02 #2
Hejsa :)

Jamen jeg har sådan set koden så jeg kan logge ind og det virker.

Jeg kan læse udfra den artikel at $_session skal bruges. Men er

$_Session ikke det samme som $HTTP_POST_VARS - gammel tid? :)



Jeg har også brug for at vide hvilken variable jeg skal bruge $_session til i min kode, for at komme køre videre på den næste side?

Sorry men jeg er ikke helt stærk i dette.
Avatar billede wanze Nybegynder
06. oktober 2010 - 23:09 #3
Nej, og sådan set burde du bruge $_POST fremfor $HTTP_POST_VARS.

En session er meget det samme som en cookie, bortset fra, at der ikke ligger direkte læsbar information hos klienten, og at en session er midlertidig.
Avatar billede Hansen_ Praktikant
06. oktober 2010 - 23:24 #4
Så hvad bør jeg gøre for at løse mit problem? :)

Jeg har mit oprettelse af brugere - samt login.

Det jeg har brug for er at - hvis login godkendes, så skal jeg sendes videre til en ny side.

Hvordan gør jeg dette :)
Avatar billede wanze Nybegynder
06. oktober 2010 - 23:29 #5
Du kan sende brugeren vide med header("Location: /nyside.php");, men for at serveren skal kunne huske, hvem du er, bliver du nødt til at gemme en session.
Avatar billede Hansen_ Praktikant
08. oktober 2010 - 22:56 #6
Hej Wanze.

Sorry, har lige haft meget om ørene pt.

Men kan du ikke være sød at fortælle hvordan jeg implanterer den header("Location: /nyside.php");

på en side? :)

For jeg får bare en fejl om at header allerede er kørt / brugt.

Sessions tror jeg at jeg har nogenlunde styr på nu :)
Avatar billede wanze Nybegynder
09. oktober 2010 - 13:42 #7
Ja, du kan ikke sende en header(), hvis du allerede har skrevet noget ud. Du skal altså sørge for, at dine headers bliver sendt før du overhovedet sender noget indhold til klienten.
Avatar billede Hansen_ Praktikant
10. oktober 2010 - 12:12 #8
Hej Wanze.

Bare kom med et svar, jeg tror vidst jeg er blevet klogere på dette punkt.

Ellers vender jeg tilbage :)

Tak.
Avatar billede wanze Nybegynder
10. oktober 2010 - 14:35 #9
Selv tak :)
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

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