03. september 2006 - 16:08
Der er
8 kommentarer og 1 løsning
Problemer med login system
Hej Jeg har lidt problemer med mit login system... Jeg har følgende kode: <?php $brugernavn = $_REQUEST["brugernavn"]; $adgangskode = $_REQUEST["adgangskode"]; $_SEESSION["brugernavn"] = $brugernavn; include("config.php"); $result = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn'"); $antal = mysql_num_rows($result); if ($antal == 0) { echo ("Det indtastede brugernavn eksistere ikke!"); } while ($row = mysql_fetch_array($result)) { $check = $row["adgangskode"]; $brugernavn = $row["brugernavn"]; } // Kontrollere password, om passwordet der er indtastet svarer overens med databasen if (md5($adgangskode) == md5($check)) { // Inkludere administrations interface include("interface.php"); } else { echo ("<b><br>Du kunne ikke logge ind, prøv igen!</b>"); } ?> </body> </html> Hvergang jeg prøver at logge ind kommer "Du kunne ikke logge ind, prøv igen!" Jeg kan ikke lige gennemskue hvad der er galt.
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
03. september 2006 - 16:12
#1
Denne linie: if (md5($adgangskode) == md5($check)) { Skal være: if (md5($adgangskode) == $check) {
03. september 2006 - 16:16
#2
Denne kode skal stå øverst på alle de sider, der kræver, du er logget ind: <?php session_start(); ?> Og her er din kode: <?php $brugernavn = $_POST["brugernavn"]; $adgangskode = $_POST["adgangskode"]; $_SEESSION["brugernavn"] = $brugernavn; include("config.php"); $result = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn'"); $antal = mysql_num_rows($result); if ($antal == 0) { echo ("Det indtastede brugernavn eksisterer ikke!"); } while ($row = mysql_fetch_array($result)) { $check = $row["adgangskode"]; $brugernavn = $row["brugernavn"]; } // Kontrollere password, om passwordet der er indtastet svarer overens med databasen if (md5($adgangskode) == $check) { // Inkluderer administrations interface include("interface.php"); } else { echo "<b><br>Du kunne ikke logge ind, prøv igen!</b>"; } ?>
03. september 2006 - 16:17
#3
Doh.. :) Takker :)
03. september 2006 - 16:20
#4
Og et svar :)
03. september 2006 - 16:21
#5
En anden metode: $result = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn' AND adganskode = '".md5($adgangskode)."'"); if (mysql_num_rows($result) == 0) { //Fejl i login } else { //Korrekt login }
03. september 2006 - 16:23
#6
Ja hmortensen, men det er jo ikke det samme.
03. september 2006 - 16:45
#7
Nej, det er væsentlig kortere, men gør det samme..
03. september 2006 - 16:56
#8
Det er ikke det samme, men hvis det skal ind i, så: <?php include "config.php"; $result = mysql_query("SELECT * FROM brugere WHERE brugernavn = '".$_POST["brugernavn"]."' AND adganskode = '".md5($_POST["adgangskode"])."'"); $antal = mysql_num_rows($result); if($antal == 1) { $row = mysql_fetch_array($result) $_SEESSION["brugernavn"] = $row["brugernavn"]; echo "Velkommen ".$row["brugernavn"]."! Du er logget ind."; } else { echo ("Brugernavnet og adgangskoden passer ikke sammen!"); } ?>
03. september 2006 - 17:06
#9
Ja selvfølgelig mangler der noget.......... Var blot et eksempel på fremgangsmåden.
Vi tilbyder markedets bedste kurser inden for webudvikling