Avatar billede denny Nybegynder
20. september 2003 - 12:53 Der er 4 kommentarer

Gem http variable.

Hej eksperten;

I er meget nye i php men jeg synes det er meget spændende at arbejde med. Og mit problem er;

Jeg har en "login form" hvor man indtaster brugernavn og password, hvis man indtaster forkert vil jeg gerne have de forkerte oplysninger til at forblive i feltet(form). Pointen er at hvis man indtaster rigtig brugernavn men forkert password, så behøver man ikke indtaste brugernavn igen men kun password.

Hvordan gøre jeg det??????

please hjælp

Denny.
Avatar billede exp Juniormester
20. september 2003 - 14:18 #1
Den slags skal du dælme passe på med!

Forestil dig at jeg vil hacke mig ind idit system, så kan jeg nøjes med at forsøge mig på brugernavnet, når sådan et er fundet (når det bliver stående), så kan jeg gå igang med at prøve at finde en kode...
Avatar billede denny Nybegynder
21. september 2003 - 11:31 #2
Det har du ret i men ved du hvordan man gør alligevel (fordi det er i forbindelse med min eksmen projket)
Avatar billede exp Juniormester
22. september 2003 - 08:19 #3
Ja, du kan lave det af to omgange, først kontrollerer du, at brugernavnet eksisterer i databasen. Returnerer den "ja", kontrollerer den passwordet. Findes dette logger den ind, findes det ikke, hopper den tilbage til login-formen, og skriver brugernavnet i formen
Avatar billede sukos Juniormester
23. september 2003 - 10:48 #4
Du bruger vel sessions?:

$check = mysql_query("SELECT `brugernavn`, `password` FROM `tablename` WHERE `brugernavn` = '". $_POST["loginnavn"] ."'") or die (mysql_error());
    if(mysql_num_rows($check) == 0) {
        $_SESSION["error"] = "Forkert brugernavn";
        header("Location:login.php");
        exit;
        }
//Brugeren fandtes, så skal der tjekkes på password
$user = mysql_fetch_object($check);

    $_SESSION["loginnavn"] = $user->brugernavn;

    if(md5($_POST["password"]) != $user->password) {//password er her md5() krypteret i DB'en
    $_SESSION["error"] = "Forkert password";
    header("Location:login.php");
    exit;
    }

Og herfra er alt så ok, da brugeren ikke er smidt tilbage

på login.php bruger du så i feltet med brugernavn:

<input type="text" name="brugernavn"<?php
if(isset($_SESSION["loginnavn"])) {
echo" value=\"". $_SESSION["loginnavn"] ."\";
unset($_SESSION["loginnavn"]);
}
?>>

Og samme gør du så med $_SESSION["error"], under formen f.eks.

<?php
if(isset($_SESSION["error"])) {
echo $_SESSION["error"];
unset($_SESSION["error"]);
}
?>
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