Avatar billede zethcom Nybegynder
06. oktober 2002 - 17:56 Der er 15 kommentarer og
1 løsning

Chat - loginsikkerhed

Hejsa :D
Jeg er ved at lave en chat.. Men jeg har et problem.. Man kan godt logge ind uden at skrive sin kode.. nogle som har forstand på det, og som vil hjælpe mig? :D

På forhånd tak :)
Avatar billede tipsen Nybegynder
06. oktober 2002 - 18:34 #1
Prøv at starte med at vise din kode - så har du større chance for hjælp.
Avatar billede zethcom Nybegynder
06. oktober 2002 - 18:40 #2
NÅrh ja..hehe
Det her er login.php:

<?
require("funktioner.php");
if ($action == "login"){
    $nick = htmlspecialchars($nick); // af nogle sikkerhedmæssige årsager
    $pass = htmlspecialchars($pass); // af nogle sikkerhedmæssige årsager
    $login_msg = Login($nick, $pass); // Det er denne funktion som tjekker om brugernavnet findes og sender derfra brugeren ind på chatten
}
if ($login_msg[svar] == "ok"){ // her bliver man så viderestillet til en side som deler chatten i to dele - top og bund?>
<META HTTP-EQUIV="Refresh" CONTENT="0; URL=chat.php?sesid=<?echo $login_msg[sesid];?>">
<?}
else {
    print $login_msg[svar];


?>
    <u><center><h3>Zethcom.dk - Chatten</h3></center></u>
    <br>
    <form action="" method="post">
    Brugernavn: <input type="text" name="nick" style="border: 1px dashed #000000"><br>
    Password: <input type="password" name="pass" style="border: 1px dashed #000000"><br>
    <input type="hidden" name="action" value="login">
    <input type="submit" value="Log ind">
    </form>
    <a href="opret.php">Opret ny bruger</a>
<br>
<br>
<hr color='#000000' size='1'>
<br>
<b><u>6/10-2002 Beta-testing:</u></b>
<br>
Så er jeg begyndt at teste chatten..
<br>
Den har ingen specielle funktioner endnu, men den skal nok blive god :)
<br>
Stay tuned dudes :)
<br>
<b>Forfatter:</b> Robin



<? } ?>


<? echo "<body bgcolor='#c0c0c0'>"; ?>
Avatar billede tipsen Nybegynder
06. oktober 2002 - 20:47 #3
Hvordan ser funktionen Login() ud?
Avatar billede zethcom Nybegynder
06. oktober 2002 - 21:16 #4
hva mener du? hehe
Avatar billede tipsen Nybegynder
06. oktober 2002 - 21:32 #5
Jeg mener "hvordan ser den funktion som hedder Login() ud?" - det må være den som giver problemer...
Avatar billede zethcom Nybegynder
06. oktober 2002 - 21:35 #6
Jeg ved ikke om det er mig som er dum? *gs*, men det som gør man ka logge ind.. det er det ovenstående...
Ka du kontakte mig over icq? 7109994 :) eller msn: robse@tdcadsl.dk
Avatar billede zethcom Nybegynder
06. oktober 2002 - 21:53 #7
function login($nick,$pass){
        $res_allerede_brugere = mysql_query("SELECT * FROM chatbrugere where nick='$nick'"); // søger efter en eksisterende bruger med samme navn
        if (mysql_num_rows($res_allerede_brugere) >= 1){
            $sesid = makesesid(); // her henter vi det unikke session id.
            $res_allerede_logget_ind = mysql_query("DELETE FROM chatbrugere_ses where nick='$nick'");
            $res_opret_bruger = mysql_query("INSERT INTO chatbrugere_ses (sesid,nick) VALUES ('$sesid','$nick')"); // Opretter brugerens session
            $login_msg[svar] = "ok";
            $login_msg[sesid] = $sesid;
            SkrivTilAlle("Chatten","$nick er logget ind kl. ".date("H:i:s")."");
        }
        else {
            $login_msg[svar] = "Fejl! - Brugernavn/Brugerkode er ikke korrekt!<br>\n";


er det den?
Avatar billede budda Nybegynder
06. oktober 2002 - 22:13 #8
for det første så hedder funktionen
login og ikke Login
Avatar billede budda Nybegynder
06. oktober 2002 - 22:14 #9
Og så skal du også lave et return eller vil funktionen jo intet give dig :)
Avatar billede tipsen Nybegynder
06. oktober 2002 - 22:24 #10
budda: Strengt taget er der vel ikke case-sensitivity på funktionsnavne?
Avatar billede budda Nybegynder
06. oktober 2002 - 22:29 #11
well han tjekker ikke passet nogen steder..

måske skulle der laves en linje hvor der stod noget med:
(under $res_all... osv)
if($pass != $res_allerede_brugere[password]){
FEJL!!! ARGH pass passer ikke sammen. :)
}
Avatar billede budda Nybegynder
06. oktober 2002 - 22:31 #12
tipsen : Det ved jeg ikke. Men ville da tro der var det :?
da Login ikke er login :) teoretisk set
Avatar billede budda Nybegynder
06. oktober 2002 - 22:38 #13
Personligt ville jeg stille den op sådan her:
function login($nick,$pass){
        $rab = mysql_query("SELECT * FROM chatbrugere where nick='$nick'"); // søger efter en eksisterende bruger med samme navn
if($pass != $rab[password) {
$error = "Fejl! med pass";
return £error;
}
elseif (mysql_num_rows($res_allerede_brugere) == 1){
            $sesid = makesesid(); // her henter vi det unikke session id.
            $res_allerede_logget_ind = mysql_query("DELETE FROM chatbrugere_ses where nick='$nick'");
            $res_opret_bruger = mysql_query("INSERT INTO chatbrugere_ses (sesid,nick) VALUES ('$sesid','$nick')"); // Opretter brugerens session
            $login_msg[svar] = "ok";
            $login_msg[sesid] = $sesid;
            SkrivTilAlle("Chatten","$nick er logget ind kl. ".date("H:i:s")."");
return false;

        }
elseif (mysql_num_rows($res_allerede_brugere) != 1){
$error = "brugeren";
return $error;
}
else {
return false;
}
}

og så filen der tjekker :

<?
require("funktioner.php");
if ($action == "login"){
    $nick = htmlspecialchars($nick); // af nogle sikkerhedmæssige årsager
    $pass = htmlspecialchars($pass); // af nogle sikkerhedmæssige årsager
    $login_msg = login($nick, $pass); // Det er denne funktion som tjekker om brugernavnet findes og sender derfra brugeren ind på chatten
}
if ($login_msg == flase){ // her bliver man så viderestillet til en side som deler chatten i to dele - top og bund?>
<META HTTP-EQUIV="Refresh" CONTENT="0; URL=chat.php?sesid=<?echo $login_msg[sesid];?>">
<?}
else {
    echo $login_msg;


?>
Avatar billede budda Nybegynder
06. oktober 2002 - 22:40 #14
men det er kun hvis jeg har forstået din kode korekt..
Avatar billede zethcom Nybegynder
06. oktober 2002 - 22:47 #15
Det virker ikke :/
Avatar billede zethcom Nybegynder
08. oktober 2002 - 16:40 #16
Har selv fundet ud af det.. skulle bare sætte and ind :) Ellers tak fordi i gad at bruge jeres tid på det :D
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