17. december 2006 - 14:16
Der er
9 kommentarer og 1 løsning
Problemer med login
Hejsa jeg har et problem. Jeg har lavet et login. Men hvis felter er tomme og man trykker login så bliver man logget ind. den får hentet vædierne op fra databasen og fra posten. det er ikke der problemet lægger. her er koden <?php echo '<div id="login"> <table align="center" border="0"> <form action="index.php" method="post"> <tr><td><p>Brugernavn :</p></td><td><input type="text" name="brugernavn"></td></tr> <tr><td><p>Kodeord :</p></td><td><input type="text" name="kodeord"></td></tr> <tr><td> </td><td><input type="submit" value="Login"></td></tr> </form> </table> </div>'; $indtastedbrugernavn = $_POST["brugernavn"]; $indtastedkodeord = $_POST["kodeord"]; //echo $indtastedbrugernavn. "</br> ". $indtastedkodeord; $hentet = sql("select * from bruger where Brugernavn = '$indtastedbrugernavn'"); $dbbrugernavn = $hentet["Brugernavn"]; $dbkodeord = $hentet["Kodeord"]; echo "$dbbrugernavn"; if ($indtastedbrugernavn == $dbbrugernavn && $indtastedkodeord == $dbkodeord) { echo "<p>"."Du er nu logget ind". "</p>"; echo "<p>".$dbbrugernavn."</p>"; echo "<p>".$dbkodeord. "</p>"; echo "$dbbrugernavn"; } else if ($indtastedbrugernavn =! $dbbrugernavn && $indtastedkodeord =! $dbkodeord) { echo "<p>"."Forkert brugernavn eller kodeord". "</p>"; } ?>
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?
17. december 2006 - 14:20
#1
tjek om de her er tomme før koden køres... (ret til php syntax:P ) if($indtastedbrugernavn <> "" && $indtastedkodeord <> "")
17. december 2006 - 14:22
#2
<?php echo '<div id="login"> <table align="center" border="0"> <form action="index.php" method="post"> <tr><td><p>Brugernavn :</p></td><td><input type="text" name="brugernavn"></td></tr> <tr><td><p>Kodeord :</p></td><td><input type="text" name="kodeord"></td></tr> <tr><td> </td><td><input type="submit" value="Login"></td></tr> </form> </table> </div>'; $indtastedbrugernavn = $_POST["brugernavn"]; $indtastedkodeord = $_POST["kodeord"]; if ($indtastedbrugernavn =! "" && $indtastedkodeord =! "") { //echo $indtastedbrugernavn. "</br> ". $indtastedkodeord; $hentet = sql("select * from bruger where Brugernavn = '$indtastedbrugernavn'"); $dbbrugernavn = $hentet["Brugernavn"]; $dbkodeord = $hentet["Kodeord"]; echo "$dbbrugernavn"; if ($indtastedbrugernavn == $dbbrugernavn && $indtastedkodeord == $dbkodeord) { echo "<p>"."Du er nu logget ind". "</p>"; echo "<p>".$dbbrugernavn."</p>"; echo "<p>".$dbkodeord. "</p>"; echo "$dbbrugernavn"; } else if ($indtastedbrugernavn =! $dbbrugernavn && $indtastedkodeord =! $dbkodeord) { echo "<p>"."Forkert brugernavn eller kodeord". "</p>"; } } ?>
17. december 2006 - 14:26
#3
altså post felterne skal bare gøres tomme hver gang ? hvad gør if($indtastedbrugernavn <> "" && $indtastedkodeord <> "") ?
17. december 2006 - 14:28
#4
tror mere den skal være sådan her... if ($indtastedbrugernavn =! "" && $indtastedkodeord =! "") men den tjekker om de 2 variabler indeholder noget. hvis ikke så køre den ikke koden under if
17. december 2006 - 14:30
#5
okay... det virked ikke på den måde men forstår godt hvad du mener... men skrev i stedet if (isset($indtastedbrugernavn) == $dbbrugernavn && isset($indtastedkodeord) == $dbkodeord) det virked... men nu kommer fejl meddelsen hele tiden op tilgængæld...
17. december 2006 - 14:41
#6
nu har jeg gjordt sådan her. men når man åbner for siden første gang står der at du er logget ind. <?php echo '<div id="login"> <table align="center" border="0"> <form action="index.php" method="post"> <tr><td><p>Brugernavn :</p></td><td><input type="text" name="brugernavn"></td></tr> <tr><td><p>Kodeord :</p> </td><td><input type="text" name="kodeord"> </td></tr> <tr><td> </td> <td><input type="submit" value="Login" name="login"> </td></tr> </form> </table> </div>'; $indtastedbrugernavn = $_POST["brugernavn"]; $indtastedkodeord = $_POST["kodeord"]; //echo $indtastedbrugernavn. "</br> ". $indtastedkodeord; $hentet = sql("select * from bruger where Brugernavn = '$indtastedbrugernavn'"); $dbbrugernavn = $hentet["Brugernavn"]; $dbkodeord = $hentet["Kodeord"]; //echo "$dbbrugernavn"; if (isset($indtastedbrugernavn) == $dbbrugernavn && isset($indtastedkodeord) == $dbkodeord) { echo "<p>"."Du er nu logget ind". "</p>"; echo "<p>".$dbbrugernavn."</p>"; echo "<p>".$dbkodeord. "</p>"; $_SESSION["brugernavn"] = $hentet["Brugernavn"]; $_SESSION["brugernavn"] = $hentet["kodeord"]; //her bliver det lagt over i sessioner så de kan blive tilgået over det hele } else if (isset($indtastedbrugernavn) != $dbbrugernavn || isset($indtastedkodeord) != $dbkodeord) { echo "<p>"."Forkert brugernavn eller kodeord". "</p>"; } ?>
17. december 2006 - 14:47
#7
det der tjek på om der står noget i brugernavn og password skal stå først... hvis du vil lave de som jeg skrev.. Der skal tjekkes på om de IKKE er tomme... hvis ikke de er tomme så skal den køre alt den kode du har... ellers skal den udskrive forkert brugernavn eller kodeord
17. december 2006 - 14:59
#8
okay men hvordan tjekker jeg så på om submit knappen er sat ? har prøvet if(isset(login)) men der kommer fejl
17. december 2006 - 15:14
#9
ahh tak nu har jeg fundet ud af det.... der skulle bare bruges if(isset($_POST["login"])) hvis du lægger et svar så aflutter jeg <?php echo '<div id="login"> <table align="center" border="0"> <form action="index.php" method="post"> <tr><td><p>Brugernavn :</p></td><td><input type="text" name="brugernavn"></td></tr> <tr><td><p>Kodeord :</p> </td><td><input type="text" name="kodeord"> </td></tr> <tr><td> </td> <td><input type="submit" value="Login" name="login"> </td></tr> </form> </table> </div>'; if (isset($_POST["login"])) { $indtastedbrugernavn = $_POST["brugernavn"]; $indtastedkodeord = $_POST["kodeord"]; //echo $indtastedbrugernavn. "</br> ". $indtastedkodeord; $hentet = sql("select * from bruger where Brugernavn = '$indtastedbrugernavn'"); $dbbrugernavn = $hentet["Brugernavn"]; $dbkodeord = $hentet["Kodeord"]; //echo "$dbbrugernavn"; if (isset($indtastedbrugernavn) == $dbbrugernavn && isset($indtastedkodeord) == $dbkodeord) { echo "<p>"."Du er nu logget ind". "</p>"; echo "<p>".$dbbrugernavn."</p>"; echo "<p>".$dbkodeord. "</p>"; $_SESSION["brugernavn"] = $hentet["Brugernavn"]; $_SESSION["brugernavn"] = $hentet["kodeord"]; //her bliver det lagt over i sessioner så de kan blive tilgået over det hele } else if (isset($indtastedbrugernavn) != $dbbrugernavn || isset($indtastedkodeord) != $dbkodeord) { echo "<p>"."Forkert brugernavn eller kodeord". "</p>"; } } ?>
17. december 2006 - 16:43
#10
Du får et svar her=)
Vi tilbyder markedets bedste kurser inden for webudvikling