Avatar billede treepeert Nybegynder
04. marts 2008 - 10:14 Der er 9 kommentarer og
1 løsning

Flyt bruger til anden side, og giv parametre med.

Hej!

Jeg har lavet en simpel log in proccedure.

Mit spørgsmål lyder på:

Hvis alle parametre er skrevet korrekt, altså password og username, skal skal jeg åbne en anden side.
Dvs. flytte bruger til en anden side.

how to do??
Avatar billede noob2003 Nybegynder
04. marts 2008 - 10:55 #1
echo"<meta http-equiv=\"refresh\" content=\"0;url=http://www.ditdomain.dk/dinside.php\" />";
Avatar billede fant0mas Nybegynder
04. marts 2008 - 10:56 #2
Du må starte en session eller sætte en cookie.
Ellers kan man bare indtaste url'et manuelt.
session_start();
$num_rows = mysql_num_rows($query);
if($num_rows == 1){
$_SESSION["loggedIn"]=true;
}
if($_SESSION["loggedIn"] == "true"){
include_once 'siden.php';
}else{
include_once 'login.php';
}

Insisterer du på at gøre som du foreslår så:

$num_rows = mysql_num_rows($query);
if($num_rows == 1){
header("Location: siden.php");
}else{
header("Location: login.php");
}
Avatar billede treepeert Nybegynder
04. marts 2008 - 14:20 #3
Hey!

Det lyder meget rigtigt. Det virker dog ikke i praksis.

sessionen virker fint efter hensigten.

Dog, har jeg skrevet, at hvis $_seesion["loggedin"] er sand, så skal den:
require_once ("minhjemmeside.php");

Hvis den er falsk, skal den:
require_once ("login.php");

Her er min kode:

        if($_SESSION["loggedin"])
        {
            require_once ("minhjemmeside.php");
        }
        else
        {
            require_once ("login.php");
        }

Derudover, har jeg et kontrolfelt nederst på siden, som skriver navnet ud på den bruger som nu er logget på.
DVS. hvis $_session["loggedin"] er sand, så skal den skrive navnet ud.

Når jeg har kørt koden, udskriver den navnet fint, som et tegne på at man nu er logget på.
Men jeg bliver ikke flyttet over på den anden side...
Avatar billede treepeert Nybegynder
04. marts 2008 - 14:28 #4
Husk på. jeg eksekverer jo min login procedure, med en form og dens action....denne action er at hente login siden.
Over-ruler det denne require_once kommando?

og i så fald, hvad skal jeg så gøre.?
Avatar billede fant0mas Nybegynder
04. marts 2008 - 16:07 #5
Sæt den sådan:
$_SESSION["loggedin"]=true;

check sådan:
if($_SESSION["loggedin"] == "true"){
echo 'true';
}else{
echo 'false';
}
Avatar billede treepeert Nybegynder
04. marts 2008 - 16:12 #6
sessionerne er fine nok, men det er springet eller "henvisningen" til en anden side der ikke sker.

Der skelnes mellem om sessionen er true eller false.

Den vil bare ikke går til det respektive "require_once" element.

Men jeg tror faktisk det er fordi, at jeg på min form, submitter en action, som kalder en bestem side.

Den over-ruler hvad jeg har stående som require_once element.
Avatar billede fant0mas Nybegynder
04. marts 2008 - 16:27 #7
Jeg forstår det ikke. Sådan burde dit dokument se ud:

if(formsubmit){
sæt session
}
<html>
osv..
<body>
if(session==true){
include noget
else
include login-form
}
</body>
</html>
Avatar billede gvp Nybegynder
04. marts 2008 - 20:12 #8
prøv at se om du kan få flg til at virke:

fil #1 (test1.php):
<?php
session_start();
print: "
<form action='test1.php' method='post'>
<input name='username' type='text'>
<input name='password' type='text'>
<input name="submit" type='submit'>
</form>";

if (isset($_POST['username'])){
$_SESSION['username'] = $_POST['username'];
$_SESSION['password'] = $_POST['password']
header("Location: test2.php");
}
?>

fil #2 (test2.php):
<?php
session_start();
print $_SESSION['username'];
print "<br/>";
print $_SESSION['password'];
?>


virker det ikke?
Avatar billede fant0mas Nybegynder
04. marts 2008 - 20:40 #9
Dette virker:

<?php
session_start();
echo "
<form action='test1.php' method='post'>
<input name='username' type='text'>
<input name='password' type='text'>
<input name='submit' type='submit'>
</form>";

if (isset($_POST['username'])){
$_SESSION['username'] = $_POST['username'];
$_SESSION['password'] = $_POST['password'];
header("Location: test2.php");
}
?>


<?php
session_start();
echo $_SESSION['username'];
echo "<br/>";
echo $_SESSION['password'];
?>
Avatar billede treepeert Nybegynder
07. marts 2008 - 11:43 #10
Hmmm,det virker tilsyneladende ikke.
Nu har jeg lavet en separat side med brugeroplysninger, som man bliver logget til. Derfra kan bruger så bare selv beslutter hvor han vil hen.
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