Avatar billede kasperbje Nybegynder
30. juni 2009 - 18:49 Der er 13 kommentarer og
1 løsning

Mangler loginsystem der virker !

Jeg har søgt hele dagen fra kl 6 til morges efter et loginsystem jeg fandt en trilion men ingen virkede ? Det kan også bare være jeg stinker til og sætte dem op. Så nu vil jeg altså høre jer om der er nogle der kan finde et loginsystem der faktisk virker og er nemt og sætte op ? Det må være i php, html, java og mySQL jeg ved ikke om www.dinhost.dk er sat op til andet. Men jeg vil gerne give 60 point til den der kan finde det til mig også vil jeg også blive meget glad :D
Avatar billede kasperbje Nybegynder
30. juni 2009 - 18:50 #1
Undskyld jeg skrev www.dinhost.dk men jeg mente www.dinhost.net
Avatar billede dstjulle Nybegynder
01. juli 2009 - 08:28 #2
du kan finde et her ( du skal dog selv lave php filer men det virker )

http://rowl.dk/Articles/45
Avatar billede kasperbje Nybegynder
01. juli 2009 - 08:34 #3
tjekker lige om det virker
Avatar billede kasperbje Nybegynder
01. juli 2009 - 09:08 #4
det virker ikke jeg får den her error :

Parse error: parse error in F:\HJEMMESIDER\KASPERBJE\DAAP.WEP.DK\medlemzone\opret.php on line 17

når jeg vil lave en bruger
Avatar billede kasperbje Nybegynder
01. juli 2009 - 09:21 #5
kan jeg ikke sende det til dig så du kan rette det for fejl ?
Avatar billede nissen2630 Novice
01. juli 2009 - 10:48 #6
Denne virker

<?php
      //Så skal vi skabe forbindelse til databasen
      mysql_connect("localhost", "brugernavn", "password");
      mysql_select_db("tabel");

      //Vi fanger oplysningerne fra opret.html
      //Vi kører også nogle funktioner som forhindrer hackerforsøg
      $brugernavn = $_POST[brugernavn];
      $brugernavn = strip_tags($brugernavn);
      $brugernavn = mysql_real_escape_string($brugernavn);

      $kodeord = $_POST[kodeord];
      $kodeord = strip_tags($kodeord);
      $kodeord = mysql_real_escape_string($kodeord);

      //Vi tjekker om brugernavnet er optaget
      $tael = mysql_query("SELECT brugernavn FROM brugere WHERE brugernavn = '".$brugernavn."'") or die(mysql_error());
      $antal = mysql_num_rows($tael);
      if($antal == 0){

      //Hvis brugernavnet ikke er optaget, skal brugeren oprettes
      mysql_query("INSERT INTO brugere (brugernavn, kodeord)VALUES('".$brugernavn."','".$kodeord."')") or die(mysql_error());
      echo 'Du er nu oprettet som bruger og kan logge ind her.<br><br><a href="login.html">Login</a>';
      }
      else
      {
      //Ellers skal han/hun have en fejlmeddelelse :)
      echo "Brugernavnet er optaget";
      }
?>
Avatar billede kasperbje Nybegynder
01. juli 2009 - 10:59 #7
nu virker opret men jeg får denne error når jeg vil logge ind

Parse error: parse error in F:\HJEMMESIDER\KASPERBJE\DAAP.WEP.DK\medlemzone\login.php on line 19

når jeg vil logge ind
Avatar billede nissen2630 Novice
01. juli 2009 - 11:02 #8
Ja med så får du da også lige den :-)

<?php
      session_start();
      //Session start skal ALTID være på FøRSTE linje, ellers virker det ikke..

      //Så skal vi skabe forbindelse til databasen
      mysql_connect("localhost", "brugernavn", "password");
      mysql_select_db("tabel");

      //Vi skal opfange informationerne fra login formen, det gør vi nu
      $brugernavn = $_POST[brugernavn];
      $brugernavn = strip_tags($brugernavn);
      $brugernavn = mysql_real_escape_string($brugernavn);

      $kodeord = $_POST[kodeord];
      $kodeord = strip_tags($kodeord);
      $kodeord = mysql_real_escape_string($kodeord);

      //Så skal vi tjekke om brugeren har skrevet de rigtige oplysninger
      $tael = mysql_query("SELECT brugernavn FROM brugere WHERE brugernavn = '".$brugernavn."' AND kodeord = '".$kodeord."' LIMIT 1") or die(mysql_error());
      $antal = mysql_num_rows($tael);
      if($antal == 1){

      //Hvis det var rigtige oplysninger, skal vi sætte en session
      $_SESSION[login] == "true";

      //Vi sætter også en session som vi skal bruge på profil.php
      $_SESSION[data] = $brugernavn;

      //Så sender vi brugeren til hans/hendes profil
      header("location: profil.php");
      } else {
      echo "Forkert brugernavn eller kodeord";
      }
?>
Avatar billede kasperbje Nybegynder
01. juli 2009 - 11:14 #9
kan du fixe den her fil ?









<script>
var registrerUrl = "login.php?registrer=ja";
var tilbageUrl = "login.php";
var regtilbageUrl = "login.php?registrer=ja";
var logudUrl = "login.php?logud=ja";
var visbrugereUrl = "login.php?visbrugere=ja";
var slet = "Er du sikker på at du vil slette denne person??";
function checkLogin()
{
if(document.loginform.brugernavn.value == '' || document.loginform.password.value == ''){
alert('Du skal udfylde det hele');
return false;
}else{return true;}
}
function checkReg()
{
if(document.regform.brugernavn.value == '' || document.regform.password.value == ''){
alert('Du skal udfylde det hele');
return false;
}else{return true;}
}
</script>
<?php
/*
START VARIABLER
*/
$session = $_SESSION['li']; // Lægger sesionen over i variablen $session
$bruger_filen = "brugere.inc"; // Skriv hvilken fil brugerne skal gemmes i
$antal_brugere = count(file("$bruger_filen")); // Tæl hvor mange brugere der er i filen


// Tjek antal brugere og skriv en ordenlig endelse ind i variablen $enden
if($antal_brugere < 2){$enden = "bruger";}else{$enden = "brugere";}

echo "<center>\n"; // Laver et simpelt html tag.
/*
STARTSIDE
*/
    if($session && !$_GET['visbrugere']) // Hvis brugeren er logget ind behøver vi jo kun at sige det til ham/hende.
    {
    echo 'Du er logget ind som: '.$session.'; <input type="button" onclick="window.location = visbrugereUrl" value="Vis brugere"><input type="button" onclick="window.location = logudUrl" value="Logud">';
    }
    elseif(!$_GET['login'] && !$session && !$_GET['registrer'] && !$_GET['visbrugere']) // Men hvis ikke så hvis ham/hende den startside.
    {
        echo '
        <h1>Login</h1>
        <form action="?login=ja" name="loginform" method="POST" onsubmit="if(checkLogin()){return true}else{return false}">
       
        Brugernavn: <input type="text" name="brugernavn">
        <br>
        Password: <input type="password" name="password">
        <br>
        <input type="submit" name="submit" value="Login"><input type="button" onclick="window.location = registrerUrl" name="submit" value="Registrer">
        </form>Der er oprettet '.$antal_brugere.' <a style="color:black;" href="?visbrugere=ja">'.$enden.'</a>';
    }
   
/*
LOGIN
*/
    if($_GET['login'] == 'ja' && !$session && isset($_POST['submit'])) /* Hvis den skal logge ind og brugeren ikke i forvejen er logget ind
    og der er trykket på login knappen så: */
    {
        $brugernavn = $_POST['brugernavn']; // Hent det indskrevne brugernavn.
        $password = $_POST['password']; // Hent det indskrevne password.
        $linjer = file("$bruger_filen"); // Læg alle linjerne i $bruger_filen ind i et array.
       
        // Hvis filen med brugerne ikke er der så opret den
        if(!file_exists("$bruger_filen")){$fext = fopen("$bruger_filen","w+");fclose($fext);}
       
        // Start med at tjekke om brugeroplysningerne passer
        foreach($linjer as $linje) // Tager hver linje en ad gangen
        {
           
            $linjetrim = rtrim($linje); // Trimmer slutningen for mærkelige tegn og ting :)
            $side = explode("|",$linjetrim); // Deler linjen op i brugernavn|password
            if($brugernavn == $side[0] && md5($password) == $side[1]) /* Hvis $brugernavn == brugernavnet i filen
            OG $password == passwordet i filen så: */
            {
                if($side[2] == 'ja'){$_SESSION['admin'] = 'ja';} /* Læg en tredje del ind i brugerfilen hvor der står admin, så kan du bruge
                sessionen admin til at filtrere med. */
                $valid = true; // Laver vaiablen valid som siger at det hele er gået godt.
                break; // Hvis de hele er gået godt så spring lige ud.
              }
        }
       
        // Hvis nu de passer :)
        if($valid == true) // Hvis $valid = true så:
        {
        $_SESSION['li'] = $brugernavn; // Lav sessionen li, med brugernavnet i.
        echo '<meta http-equiv="refresh" content="0;url=login.php">'; // Send brugeren til forsiden med meta tagget.
        }else{ // Hvis $valid ikke er true
        echo 'Forkert brugernavn eller password.<br><input type="button" onclick="window.location = tilbageUrl" value="Tilbage">'; // Så skriv dette
        }
    }
   
/*
LOGUD
*/
    if($_GET['logud'] == 'ja') // Hvis det er logud tid så:
    {
        session_destroy(); // Slet alle sessioner
        echo '<meta http-equiv="refresh" content="0;url=login.php">'; // Og send brugeren tilbage til forsiden.
    }
   
/*
REGISTRER BRUGER
*/

    if($_GET['registrer'] == 'ja') // Hvis det er tid til at oprette en bruger så:
    {
        // Skriv dette html stykke:
        echo '
        <h1>Registrer</h1>
        <form action="?registrer=gem" method="POST" name="regform" onsubmit="if(checkReg()){return true}else{return false}">
       
        Dit ønskede brugernavn: <input type="text" name="brugernavn">
        <br>
        Dit ønskede password: <input type="password" name="password">
        <br>
        <input type="submit" name="submit" value="Registrer"><input type="button" onclick="window.location = tilbageUrl" value="Tilbage">
        </form>
        ';
    }
   
    if($_GET['registrer'] == 'gem') // Hvis det er tid til at gemme brugeren så:
    {
        $brugernavn = trim($_POST['brugernavn']); // trim brugernavnet for mærkelige tegn og derefter læg det ind i vaiablen $brugernavn
        $password = trim(md5($_POST['password'])); // så trim passwordet og md5 krypter det og læg det ind i vaiablen password.
        $linjer = file("$bruger_filen"); // Så læg alle linjerne i bruger_filen over i et array IGEN :)
        $valid = true; // Laver variablen valid til true
        if(!empty($brugernavn) && !empty($password)) // Hvis $brugernavn ikke er tomt og det samme med passwordet så:
        {
            foreach($linjer as $linje) // For hver bruger dvs linje:
            {
                $trimlinje = ltrim($linje); // Fjerner mærkelige tegn i slutningen af linjen
                $side = explode("|", $trimlinje); // Deler linjen op i brugernavn|password
                // Hvis brugernavn == brugernavnet i filen på linjen den tjekker så hop ud og sig der er en fejl
                if($brugernavn == $side[0]){$valid = false;}
            }
                if($valid == true) // Hvis der ikke er sket en fejl så:
                {
                    $nybruger = "\n$brugernavn|$password"; // Lav konstrukturen af brugernavn/password forhold som i filen
                    $fil = fopen("$bruger_filen","a+"); // åben $bruger_filen til læsning og skrivning i slutningen af filen
                    if(fwrite($fil, $nybruger)) // Hvis det lykkes at putte konstrukturen $nybruger ind i filen så:
                    {
                        //Skriv dette:
                        echo 'Brugernavnet er oprettet.<br><input type="button" onclick="window.location = tilbageUrl" value="Login">';
                       
                    }
                    else // Ellers hvis der er sket en fejl så skriv det:
                    {
                    echo 'Der skete en fejl.<br><input type="button" onclick="window.location = regtilbageUrl" value="Prøv igen">';
                    }
                    fclose($fil); // Luk filen igen.
                }
                else // Hvis brugernavnet er taget så skriv det, med en tilbage knap.
                {echo 'Brugernavnet er taget.<br><input type="button" onclick="window.location = regtilbageUrl" value="Tilbage">';}
       
        }else{echo 'Du skal udfylde det hele.<br><input type="button" onclick="window.location = regtilbageUrl" value="Tilbage">';}
       
    }

/*
VIS ALLE BRUGERE
*/
    if($_GET['visbrugere'] == 'ja') // Hvis den har fået besked på at vise brugerne så:
    {
        echo '<h1>Brugere:</h1>'; // Skriv en overskrift
        $brugere = file("$bruger_filen"); // Læg brugerne ind i et array
        echo '<h4><u>'; // Skriv nogle simple html tags
        if(count($brugere) > 0) // Hvis der er mere end 0 brugere så:
        {
            foreach($brugere as $linje) // Kør en linje igennem en adgangen
            {
                $trimlinje = ltrim($linje); // Fjern mærkelige tegn i numsen på strengen
                $side = explode("|", $trimlinje); // Del linjen op i brugernavn|password
                echo ucfirst($side[0]); // Skriv brugerne ud med stort for bogstav
               
                echo '<br>';// Laver linjeskift
            }
        }else{echo 'Ingen brugere.';} // Hvis der ingen brugere er så skriv det.
        echo '</h4></u>';    // Slut de simple html tags af.
        echo '<input type="button" onclick="window.location = tilbageUrl" value="Tilbage">'; // Lav en tilbage knap.
    }
   
echo "\n<center/>"; // Laver et simpelt slut html tag for ovenstående center
   
?>
Avatar billede nissen2630 Novice
01. juli 2009 - 11:24 #10
Det her jo ikke ret meget med det første du spurgte om.
Troede du ville have det andet til at virke.
Avatar billede kasperbje Nybegynder
01. juli 2009 - 11:27 #11
jamen der er 10000000000 error det gider ikke og virke det her login virker men når jeg logger ind ryger jeg bare over på login.php igen
Avatar billede kasperbje Nybegynder
01. juli 2009 - 11:52 #12
vil/kan du fixe den ?
Avatar billede kasperbje Nybegynder
01. juli 2009 - 12:21 #13
jeg har rykket mit spørgsmål.


http://www.eksperten.dk/spm/879758
Avatar billede kasperbje Nybegynder
01. juli 2009 - 16:06 #14
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
Kurser inden for grundlæggende programmering

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