Avatar billede krydset Nybegynder
29. august 2003 - 18:43 Der er 14 kommentarer og
1 løsning

tjekke bruger og password

hejsa jeg har den her kode her som skal tjekke bruger og pass i en db men de virker ik rigtigt, kan nogen hjælpe med den


form_login.php

<link rel="stylesheet" type="text/css" href="../style/style2.css">


<br><br><br><br><br>
<CENTER>
<form action="../test/login_script.php" method="post">

<fieldset>
<legend>Login</legend>
<div>
<label for="t1">Brugernavn:</label><input type="text" name="bruger_navn" id="t1" /><br />
<label for="t2">Password:</label><input type="Password" name="pass_word" id="t2" /><br />

</div>
</fieldset>



<div><input type="submit" value="Login" name="submit" id="submit" /></div>
</form>
</CENTER>
<CENTER>
<STRONG>Er du ikke bruger så <A href="../test/opret.php">Tryk her</A></strong>
</CENTER>





//login_script.php


<?php
session_start();
$bruger_navn = $_POST['bruger_navn'];
$pass_word = md5($_POST['pass_word']);

if(isset($_POST['bruger_navn'])) {


include('../test/dbconnect.php');
if (mysql_result(mysql_query("SELECT COUNT (*) FROM brugere WHERE bruger_navn='$_POST[bruger_navn]' AND pass_word='$_POST[pass_word]'"),0) == 1) {
   
    echo 'du er logget ind';
} else {
    echo 'du er ikke logget ind';
}
}
?>

jeg får denne her fejl


Warning: Supplied argument is not a valid MySQL result resource in /home/administrator/www/test/login_script.php on line 10


Og kan en uddybe lidt hvad fejl medd betyder

mvh
//krydset
Avatar billede tipsen Nybegynder
29. august 2003 - 18:46 #1
Prøv at splitte din mysql_query og mysql_result op i flere statements og smid noget "or die(mysql_error())" på - så får du en brugbar fejlmelding.
Avatar billede krydset Nybegynder
29. august 2003 - 19:19 #2
det er jeg squ lidt dum til, vil du give lidt hjælp, jeg får hele tiden fejl på det p**.

//krydset
Avatar billede krydset Nybegynder
29. august 2003 - 20:49 #3
har prøvet det her men funger ik rigtigt ;-( kan du jkælpe med at tilrette det lidt


//login_script.php
Avatar billede krydset Nybegynder
29. august 2003 - 20:49 #4
<?PHP
// Variabler
    $submit      =  $_POST["submit"];
    $Brugernavn  =  $_POST["bruger_navn"];
    $pass_word1 =  $_POST["pass_word"];
    $pass_word  =  md5($pass_word1);

include("dbconnect.php");


// Hvis submit knappen log_ind ikke eksisterer, brokker den sig
    if (!isset($submit)) {
        echo "Du skal komme fra log ind siden!<br>";
        echo "<a href=\"logind.htm\">Gå til log ind siden</a>";
    }

    $tjek = mysql_query("SELECT id FROM brugere WHERE bruger_navn = '$bruger_navn' AND pass_word = '$pass_word'")or die(mysql_error());

    $antal = mysql_num_rows($tjek);

    if ($antal == 1) {
        echo "Du kunne godt logges ind :o)";
    }else{
        echo "Du kunne ikke logges ind :o(";

    }
?>
Avatar billede tipsen Nybegynder
29. august 2003 - 21:08 #5
Dette er fint:

$pass_word  =  md5($pass_word1);
pass_word = '$pass_word'

-men det er dette ikke:

$Brugernavn  =  $_POST["bruger_navn"];
bruger_navn = '$bruger_navn'

-kan du se, hvad der ikke hænger sammen?
Avatar billede krydset Nybegynder
29. august 2003 - 21:36 #6
nej
Avatar billede krydset Nybegynder
29. august 2003 - 21:36 #7
jo case sensitive men det er rettet
Avatar billede krydset Nybegynder
29. august 2003 - 21:37 #8
nu ser det sådan her ud, men det er md5 tjekket der ikke virker for som det står nu virker det, men hvis jeg aktivere md5 sp kokser det :-(
Avatar billede krydset Nybegynder
29. august 2003 - 21:37 #9
<?PHP
// Variabler
    $submit1    =  $_POST["submit"];
    $Brugernavn =  $_POST["bruger_navn"];
    $pass_word =  $_POST["pass_word"];
    #$pass_word  =  md5($pass_word1);

include("dbconnect.php");


// Hvis submit knappen log_ind ikke eksisterer, brokker den sig
    if (!isset($submit)) {
        echo "Du skal komme fra log ind siden!<br>";
        echo "<a href=\"logind.htm\">Gå til log ind siden</a>";
    }

    $tjek = mysql_query("SELECT * FROM brugere WHERE bruger_navn = '$bruger_navn' AND pass_word = '$pass_word'")or die(mysql_error());


    $antal = mysql_num_rows($tjek);

    if ($antal == 1) {
        echo "Du kunne godt logges ind :o)";
    }else{
        echo "Du kunne ikke logges ind :o(";

    }
?>
Avatar billede krydset Nybegynder
29. august 2003 - 21:38 #10
sorry gammle kode det store B er rettet
Avatar billede tipsen Nybegynder
29. august 2003 - 22:35 #11
Er "$Brugernavn" magen til "$bruger_navn" ?
Avatar billede krydset Nybegynder
30. august 2003 - 00:54 #12
har fët det til at virke poster løsningen i morgen ;-D
Avatar billede krydset Nybegynder
30. august 2003 - 09:03 #13
dette her script virker perf
<?PHP
// Variabler
    $submit      =  $_POST["submit"];
    $Brugernavn  =  $_POST["bruger_navn"];
    $pass_word1  =  $_POST["pass_word"];
    $pass_word  =  md5($pass_word1);

include("dbconnect.php");


// Hvis submit knappen log_ind ikke eksisterer, brokker den sig
    if (!isset($submit)) {
        echo "Du skal komme fra log ind siden!<br>";
        echo "<a href=\"logind.htm\">Gå til log ind siden</a>";
    }

    $tjek = mysql_query("SELECT id FROM brugere WHERE bruger_navn = '$bruger_navn' AND pass_word = '$pass_word'")or die(mysql_error());

    $antal = mysql_num_rows($tjek);

    if ($antal == 1) {
        echo "Du kunne godt logges ind :o)";
    }else{
        echo "Du kunne ikke logges ind :o(";

    }
?>

men problemet lå i db da min database felt kun var sat til varchar 15 og en md5 kryptering er på ca 40. rettede db felt til varchar 60 og så fungede det
Avatar billede krydset Nybegynder
30. august 2003 - 09:04 #14
det var løsningen

nupper point selv :-O
Avatar billede tipsen Nybegynder
30. august 2003 - 10:12 #15
Ovenstående fungerer heller ikke korrekt, hvis det er hele koden.
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