Avatar billede grumfidum Nybegynder
04. november 2007 - 14:11 Der er 6 kommentarer og
1 løsning

Php login

hej.. er i gang med at lave et simpelt php login, men kan ikke rigtig få det til at virke..

Har disse filer

default.php        formular til login

bruger.php        php-script, der tjekker adgangsrettigheder

login.php        skabelon til alle password-beskyttede sider

logout.php        script til logout

login funktionen viser login fejl hvis jeg taster forkert login, men hvis jeg taster rigtigt viser den bare en hvid skærm og viser at den nu viser bruger.php

Hvad kan være galt? Hvis nogen er en haj til php (rimelig simpelt kodet) kan nogen måske prøve lige at se om mine filer er korrekt skrevet?

Ellers, kan der så være andre ting der spiller ind?

Siden er lavet gennem one.com og skulle vidst understøtte alle kodesprog..

Mvh Michael
Avatar billede nwn Nybegynder
04. november 2007 - 14:39 #1
Næste gang så husk lige at når dit spg er vedrørende PHP, så skal det placeres i kategorien PHP, kunne være du ikke kunne finde den (:

Prøv at vise mig bruger.php og login.php, så vil jeg lige kigge dem igennem.
Avatar billede grumfidum Nybegynder
04. november 2007 - 17:07 #2
Jeg kunne ikke lige finde den dér Php afdeling nej.. :)

Jeg viser lige tre filer..

default.php

<?php
session_start();
?>

<html>

<head></head>

<body>

<form method="post" action="bruger.php" enctype="multipart/form-data">
<fieldset>
<legend>Indtast brugernavn og password</legend>
<label for="t1">Brugernavn:</label>
<input id="t1" type="text" name="brugernavn" /><br />

<label for="t2">Password:</label>
<input id="t2" type="password" name="password" /><br />

<label for="subm">&nbsp;</label>
<input id="subm" type="submit" value="Log in" />

&nbsp;<input type="reset" name="slet" value="Slet" />
</fieldset>
</form>



</body>
</html>


bruger.php:

<?php
session_start();
?>

<html>

<head>

</head>

<body>

<?php

ob_start();
$brugernavn = "bruger";
$MD5_password = "7714e5c59aedddae4a688d3ebaedef2a";
$brugerdata = $_POST['brugernavn'];
$password = md5($_POST['password']);

if($password == "$MD5_password" && $brugerdata == "$brugernavn"){

  session_start();
  $_SESSION['innlogget'] = 1;
  $_SESSION['brugernavn'] = $brugernavn;
  $_SESSION['password'] = $MD5_password;

header ("Location: login.php");
}

  else{
    echo "Forkert brugernavn eller password! Tjek, at [Caps Lock] ikke er aktiveret og <a href=\"default.php\">prøv igen</a>.";
  }

Ob_end_flush();

?>


</body>
</html>


login.php

<?php
session_start();
?>

<html>

<head></head>

<body>

<?php
if($_SESSION['brugernavn'] && $_SESSION['password'])
{
    echo "<p>Til lykke, du er inde</p> ";
}
else
{
    echo "<h1>Ukorrekt login</h1>
   
    <p>Du skal være logget ind for at se disse sider. <a class=\"tlink\" href=\"default.php\">Log in</a></p>";
}
?>

</body>

</html>


Mvh Mic og tak
Avatar billede nemlig Professor
04. november 2007 - 19:52 #3
Prøv denne ændring i bruger.php:

Linjen: header ("Location: login.php");

Ændres til:  include("login.php");

Det virker hos mig.
Avatar billede nwn Nybegynder
04. november 2007 - 22:50 #4
nemliq -> det ville være mærkeligt. Hanb ruger header til at overfører brugeren til en anden side, og include bruges til at hente informationer, f.eks connection til en database.

Grumfidum, prøv at ændre login.php til:

<?php
session_start();
?>

<html>

<head></head>

<body>

<?php
if($_SESSION['brugernavn'] && $_SESSION['password'] == 'true') {
    echo "<p>Til lykke, du er inde</p> ";
}
else
{
    echo "<h1>Ukorrekt login</h1>
   
    <p>Du skal være logget ind for at se disse sider. <a class=\"tlink\" href=\"default.php\">Log in</a></p>";
}
?>

</body>

</html>
Avatar billede grumfidum Nybegynder
04. november 2007 - 23:56 #5
Fedt.. fik login til at virke med at include i stedet for header.. jeg smutter i seng nu.. prøver lige det andet af imorgen efter arbejdet.. takker til jer begge indtil videre.. den driller nemlig stadig lidt, men ser om jeg kan løse det.. nu er det ikke login'et mere, men noget grafisk der er ændret..

Måske iframes kunne ændre det... men tester det lige imorgen.. :)

Mvh Michael
Avatar billede nemlig Professor
05. november 2007 - 08:28 #6
nwn: Nu er jeg ingen ørn til php, men det virker altså. "Include" eller "Require" henter jo blot login.php koden, såfremt der er indtastet korrekt brugernavn og kode.
Og når login.php afvikles, så tjekkes der for om Sessions-variablerne er sat.
Avatar billede grumfidum Nybegynder
11. oktober 2008 - 10:07 #7
Ingen svar
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
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

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