Avatar billede tras Juniormester
06. januar 2005 - 09:16 Der er 5 kommentarer og
1 løsning

Mit login virker ikke 100% hvad har jeg gjordt forkert

Jeg kan sagtens logge ind på min siden men, Den går ikke ned og skreiver den text som den skal. Du er logget ind. på samme side som jeg loggede ind på. jeg har set min ven lave det før men den viser ikke texten Du er logget ind men bare login siden som den er når man logger in.

Når jeg er logget ind skal den skrive

<?if($_SESSION['logged'] != "yes" && $_SESSION['type'] != "admin"){?>
<form action="login.php?do=admin" method="POST">
  <table width="100%" height="100%">
    <tr>
      <td height="25" align="center">&nbsp;
       
      </td>
    </tr>
    <tr>
      <td align="center">
        Username:
      </td>
    </tr>
    <tr>
      <td align="center">
        <input type="text" name="login">
      </td>
    </tr>
    <tr>
      <td align="center">
        Password:
      </td>
    </tr>
    <tr>
      <td align="center">
        <input type="password" name="pass">
      </td>
    </tr>
    <tr>
      <td style="position: relative;">
        <input type="submit" value="Login" Style="position: absolute; left: 230px; top: 12px; cursor: hand;">
      </td>
    </tr>
    <tr>
      <td height="25">&nbsp;
       
      </td>
    </tr>
  </table>
</form>
<?}else{?>
Du er logget ind <-- Dette skal den skrive når jeg er logget in
<?}?>
Avatar billede retep Nybegynder
06. januar 2005 - 09:41 #1
Der er flere ting ;)

<form action="login.php?do=admin"
kan ikke lade sig gøre, i stedet skal du have
<form action="login.php" method="POST">
<input type="hidden" name="do" value="admin">

Og så mangler du et sted der håndterer at sessionen bliver sat.
dvs. aller øverst i din fil kunne du have noget ala:
if (isset($_POST["login"]) && isset($_POST["pass"])){

//og noget check på brugeren evt. op mod en database
if ($_POST["login"] == "testbruger" && $_POST["pass"] == "testpass"){
$_SESSION["logged"] = "yes";
$_SESSION["type"] = "normal";
//genlæse siden med de nys sessionsvariable
header("location: login.php");
exit;

}
}

Håber det kan hjælpe dig lidt på vej ;)
Avatar billede retep Nybegynder
06. januar 2005 - 09:42 #2
ov:
$_SESSION["type"] = "normal";
skal selvf. være
$_SESSION["type"] = $_POST["do"];
for at det giver mening.
Avatar billede kammeyer Nybegynder
06. januar 2005 - 09:58 #3
Du siger din login virker fint, så jeg formoder du laver bruger evaluering der.
Så skal du sørge for at $_SESSION['logged'] bliver sat til 'yes' og $_SESSION['type'] bliver sat til 'admin' (hvis personen er admin naturligvis).

Øverst på hver PHP-script side skal du huske at starte session: session_start(); for at det virker.

> retep  <form action="login.php?do=admin"  <--- den slags virker fint for mig - og gør det også i eksemplet.
Avatar billede tras Juniormester
06. januar 2005 - 12:13 #4
Java::Alert("@".$_SESSION['logged']."%".$_SESSION['type']);

Hehe fandt sekv svaret. Mangelede denne kode
Avatar billede retep Nybegynder
06. januar 2005 - 12:41 #5
øhhh... Det er da den mærkeligste kode jeg længe har set... Det er da i hvert fald ikke php som har fået din kode til at virke!
Avatar billede kammeyer Nybegynder
08. januar 2005 - 19:17 #6
retep> Ser også mystisk ud for mig.
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