Avatar billede sbryld Nybegynder
22. oktober 2001 - 22:05 Der er 28 kommentarer og
1 løsning

Hjælp til login script!!!!

Jeg er ved at lave en hjemmeside, men vil gerne have en login en funktion, så jeg ved hvem der er interesseret i min side. Jeg har forsøgt i langtid at finde et script, men uden held. Jeg havde tænkt mig at det skulle bruge Mysql, så man kan oprette og slette brugere endvidere skal det også indeholde sessions så brugeren kan rette i sine oplysninger. Jeg håber der sidder en der kan hjælpe!
Avatar billede parazite Nybegynder
22. oktober 2001 - 22:10 #1
http://www.eksperten.dk/spm/118498 : Tidligere lignende spørgsmål besvaret af mig - tjek det, og se om du kan bruge det til noget.

www.fotx.net/parazite
Avatar billede sbryld Nybegynder
22. oktober 2001 - 22:37 #2
Jeg er lidt i tvivl om, hvordan du henter bruger navn og adgangs kode fra min Db, vil prøve at forklare det?
Avatar billede parazite Nybegynder
22. oktober 2001 - 22:44 #3
<?
$result = mysql_query(\"SELECT brugernavn, kodeord FROM tabel WHERE brugernavn = \'$brugernavn\'\");
$row = mysql_fetch_array($result);
print \"Brugernavn fra databasen : $row[brugernavn]<br>
Kodeord fra databasen : $row[kodeord]<br>\";
?>
Sådan ca. sådan der. :)
Avatar billede sbryld Nybegynder
22. oktober 2001 - 22:57 #4
Den skriver bare: \"Warning: Suplied argument is a not valid MySQL result resource\" Hvad mener den med det? Jeg er jo rimeligt ny!
Avatar billede sbryld Nybegynder
22. oktober 2001 - 23:01 #5
Hvis jeg får en løsning i dag giver jeg dobbelt op på point.
Avatar billede parazite Nybegynder
22. oktober 2001 - 23:02 #6
Hvor meget ved du om databaser? Har du oprettet din tabel, og indsat et brugernavn og kodeord? Har du rettet min kode, så tabel er navnet på din tabel?
Avatar billede sbryld Nybegynder
22. oktober 2001 - 23:06 #7
Ja, til det hele det hele, men hvor kan så fejlen være?
Avatar billede parazite Nybegynder
22. oktober 2001 - 23:08 #8
Vis mig hele din kode, så kan jeg se på det.
Avatar billede sbryld Nybegynder
22. oktober 2001 - 23:19 #9
<?php
Session_Start();
if($ok){
  $Dataset=mysql_Connect  (\'Localhost\',\'bruger\',passw\');
  $result=mysql_Query(\"SELECT User, Pass From Login 
WHERE User=\'$Bruger\'\");
  $Row=Mysql_fetch_array($result);
  if(Passw == \"$Row[Passw]\"){
    session_Register(\"Bruger\");
    session_Register(\"Passw\");
    header(\"Location: Success.php\");
    exit;
  }Else{
    echo \"Du har ikke adgang!\";
  }
}

?>

<FORM action=\"<?$PHP_SELF;?>\" method=\"Post\">
Brugernavn:
<BR>
<INPUT TYPE=\"TEXT\" NAME=\"Bruger\">
<BR>
Adgangskode:
<BR>
<INPUT TYPE=\"TEXT\" NAME=\"Passw\">
<BR>
<INPUT TYPE=\"Submit\" NAME=\"ok\" Value=\"Login\">
</FORM>
Avatar billede sbryld Nybegynder
22. oktober 2001 - 23:21 #10
Rettelse:
<INPUT TYPE=\"Password\" NAME=\"passw\">
Avatar billede parazite Nybegynder
22. oktober 2001 - 23:35 #11
Sørg for at bruge lowercase og uppercase korrekt.

<?php
session_start();
if($ok){
  mysql_connect(\'Localhost\',\'bruger\',passw\');
  $result = mysql_query(\"SELECT User, Pass From Login 
WHERE User=\'$Bruger\'\");
  $row = mysql_fetch_array($result);
  if($Passw == \"$row[Passw]\") {
    session_Register(\"Bruger\");
    session_Register(\"Passw\");
    header(\"Location: Success.php\");
    exit;
  } else {
    echo \"Du har ikke adgang!\";
  }
}

?>

<FORM action=\"<?$PHP_SELF;?>\" method=\"Post\">
Brugernavn:
<BR>
<INPUT TYPE=\"TEXT\" NAME=\"Bruger\">
<BR>
Adgangskode:
<BR>
<INPUT TYPE=\"TEXT\" NAME=\"Passw\">
<BR>
<INPUT TYPE=\"Submit\" NAME=\"ok\" Value=\"Login\">
</FORM>

Noget i den stil burde virke.
Tjek også for lower/uppercase i din database.
Avatar billede sbryld Nybegynder
22. oktober 2001 - 23:42 #12
Sidder og skriver på min bærbare, men den gik ned det tager lige et øjeblik si er vi klar igen.
Avatar billede parazite Nybegynder
22. oktober 2001 - 23:42 #13
Og så er luft i din kode en god ting:
<?php
session_start();
if ($ok) {
    mysql_connect(\'Localhost\',\'bruger\',\'passw\');
    $result = mysql_query(\"SELECT User, Pass FROM Login WHERE User=\'$Bruger\'\");
    $row = mysql_fetch_array($result);
    if ($Passw == \"$row[Passw]\") {
        session_Register(\"Bruger\");
        session_Register(\"Passw\");
        header(\"Location: Success.php\");
        exit;
    } else {
        echo \"Du har ikke adgang!\";
    }
}
?>
Mere overskueligt at se på.
Avatar billede sbryld Nybegynder
22. oktober 2001 - 23:48 #14
Mit tilbud med pointene er stadigt gældende i morgen, lige nu tror jeg går i seng min Computer bliver ved med at gå ned.
Avatar billede parazite Nybegynder
22. oktober 2001 - 23:49 #15
OK - bare skriv i morgen, når du er klar. :)
Avatar billede sbryld Nybegynder
23. oktober 2001 - 15:05 #16
Har endeligt fået prøvet koden, den siger det samme igen! Jeg aner ikke hvad der kan være galt.
Avatar billede sbryld Nybegynder
23. oktober 2001 - 21:56 #17
Så er vi klar igen!
Avatar billede sbryld Nybegynder
23. oktober 2001 - 22:15 #18
Har lokaliseret fejlen til linjen hvor der står:
$row=mysql_fetch_array($result);
Avatar billede parazite Nybegynder
23. oktober 2001 - 22:24 #19
Fejlen ligger sjældent hvor PHP siger den ligger.
Har du eks følgende i linie 3:
$var = \"foo\"
og følgende i linie 4:
$var2 = \"foo2\";
Så vil PHP melde fejl i linie 4, selvom det er i linie 3 at ; mangler. :)

Altså, vis mig præcis den kode du har nu - den du viser ovenover ligner ikke det jeg har foreslået dig at bruge.
Avatar billede sbryld Nybegynder
23. oktober 2001 - 22:47 #20
Har fået det til at fungere, men nu skipper den bare login delen og springer direkte til Success.php, det er lidt mystisk, jeg rettede bare koden:
if($Passw == \"$row[Pass]\"). Hvis man sletter den session som siden ahr lavet får man login siden frem igen og den reagere også på forkert password.
Hvordan får jeg det sådan at den viser login siden hvergang?
Avatar billede sbryld Nybegynder
23. oktober 2001 - 22:53 #21
Skylder dig en undskyldning, det virker næsten nu, jeg magler bare det med at rette i sine oplysninger!
Avatar billede parazite Nybegynder
23. oktober 2001 - 22:55 #22
Hopla. Der kan du nok bruge http://www.eksperten.dk/spm/124561 til noget. Spørg hvis du er i tvivl! :)
Avatar billede sbryld Nybegynder
23. oktober 2001 - 23:04 #23
Fint nok, men hvad med en funktion som kan logge ud og afslutte den session der kører?
Det er det sidste så er pointene dine :-))
Avatar billede parazite Nybegynder
23. oktober 2001 - 23:06 #24
På siden logud.php:
<?
session_start();
session_unset();
session_destroy();
header(\"Location: index.php\");
?>
Og så linker du bare til den. Viola! :)
Avatar billede sbryld Nybegynder
23. oktober 2001 - 23:12 #25
Tak for hjælpen, jeg giver en bonus på 30 point for den ekstra hjælp :-))
Avatar billede parazite Nybegynder
23. oktober 2001 - 23:16 #26
Øh... og tager pointene selv? :)
Avatar billede sbryld Nybegynder
23. oktober 2001 - 23:27 #27
Det må du undskylde, kan jeg ikke overføre dem til dig på en eller anden måde?
Det er første gang jeg bruger Eksperten, men jeg er ikke skuffet, det virker helt perfekt! :-D
Avatar billede parazite Nybegynder
23. oktober 2001 - 23:29 #28
He, jo, bare opret et nyt spørgsmål med overskriften \"Point til parazite\" i samme kategori som dette. I spørgsmålet skriver du så:
Reference : og så dette spørgsmåls link.
Så kan andre brugere se hvorfor jeg pludselig skal have point fra dig uden noget egentligt spørgsmål.
Og så opret kun et til 60 point - 150 er alt for meget, og så kan du jo stille spørgsmål for dem også.

Velkommen til! :)
www.fotx.net/parazite
Avatar billede parazite Nybegynder
23. oktober 2001 - 23:35 #29
Og så folket kan se at alt er i orden: http://www.eksperten.dk/spm/124783 :)
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