Login-Funktion

  • Login-Funktion

    Hallo,
    Ich hab eine Seite und möchte eine Login funktion einbauen mit MySQL, neu registrieren und passwort vergessen.
    Wenn man sich eingeloggt hat soll an der stelle wo das Login Menü war dann ein anderes Menü erscheinen was z.B. Privaterbereich, Profil, Logout beinhaltet.
    Ich habe schon mehrere Sachen probiert aber nichts hat so funktioniert wie es soll und im Internet habe ich auch nichts genaues gefunden.
    Das Login-Menü sollte auch mit Css kompatibel sein.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von DestinatioN ()

  • Mit diesem Login System ausem internet
    index.php

    PHP-Quellcode

    1. <?php
    2. session_start();
    3. $username = $_SESSION['username'];
    4. $password = $_SESSION['password'];
    5. if(!$username && !$password){
    6. echo "Welcome Guest! <br> <a href=login.php>Login</a> | <a href=register.php>Register</a>";
    7. }else{
    8. echo "Welcome ".$username." (<a href=logout.php>Logout</a>)";
    9. }
    10. ?>
    Alles anzeigen


    login.php

    PHP-Quellcode

    1. <?php
    2. session_start();
    3. function index(){
    4. echo "<form action='?act=login' method='post'>"
    5. ."Username: <input type='text' name='username' size='30'><br>"
    6. ."Password: <input type='password' name='password' size='30'><br>"
    7. ."<input type='submit' value='Login'>"
    8. ."</form>";
    9. }
    10. function login(){
    11. $username = $_REQUEST['username'];
    12. $password = $_REQUEST['password'];
    13. $connect = mysql_connect("host", "username", "password");
    14. if(!$connect){
    15. die(mysql_error());
    16. }
    17. $select_db = mysql_select_db("database", $connect);
    18. if(!$select_db){
    19. die(mysql_error());
    20. }
    21. $result = mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password'");
    22. $row = mysql_fetch_array($result);
    23. $id = $row['id'];
    24. $select_user = mysql_query("SELECT * FROM users WHERE id='$id'");
    25. $row2 = mysql_fetch_array($select_user);
    26. $user = $row2['username']
    27. if($username != $user){
    28. die("Username is wrong!");
    29. }
    30. $pass_check = mysql_query("SELECT * FROM users WHERE username='$username' AND id='$id'");
    31. $row3 = mysql_fetch_array($pass_check);
    32. $email = $row3['email'];
    33. $select_pass = mysql_query("SELECT * FROM users WHERE username='$username' AND id='$id' AND email='$email'");
    34. $row4 = mysql_fetch_array($select_pass);
    35. $real_password = $row4['password'];
    36. if($password != $real_password){
    37. die("Your password is wrong!");
    38. }
    39. session_register("username", $username);
    40. session_register("password", $password);
    41. echo "Welcome, ".$username." please continue on our <a href=index.php>Index</a>";
    42. }
    43. switch($act){
    44. default;
    45. index();
    46. break;
    47. case "login";
    48. login();
    49. break;
    50. }
    51. ?>
    Alles anzeigen


    logout.php

    PHP-Quellcode

    1. <?php
    2. session_start();
    3. session_destroy();
    4. echo "You are now logged out! <a href=index.php>Index</a> or <a href=login.php>Login</a>";
    5. ?>


    register.php

    PHP-Quellcode

    1. <?php
    2. function register_form(){
    3. $date = date('D, M, Y');
    4. echo "<form action='?act=register' method='post'>"
    5. ."Username: <input type='text' name='username' size='30'><br>"
    6. ."Password: <input type='password' name='password' size='30'><br>"
    7. ."Confirm your password: <input type='password' name='password_conf' size='30'><br>"
    8. ."Email: <input type='text' name='email' size='30'><br>"
    9. ."<input type='hidden' name='date' value='$date'>"
    10. ."<input type='submit' value='Register'>"
    11. ."</form>";
    12. }
    13. function register(){
    14. $connect = mysql_connect("host", "username", "password");
    15. if(!$connect){
    16. die(mysql_error());
    17. }
    18. $select_db = mysql_select_db("database", $connect);
    19. if(!$select_db){
    20. die(mysql_error());
    21. }
    22. $username = $_REQUEST['username'];
    23. $password = $_REQUEST['password'];
    24. $pass_conf = $_REQUEST['password_conf'];
    25. $email = $_REQUEST['email'];
    26. $date = $_REQUEST['date'];
    27. if(empty($username)){
    28. die("Please enter your username!<br>");
    29. }
    30. if(empty($password)){
    31. die("Please enter your password!<br>");
    32. }
    33. if(empty($pass_conf)){
    34. die("Please confirm your password!<br>");
    35. }
    36. if(empty($email)){
    37. die("Please enter your email!");
    38. }
    39. $user_check = mysql_query("SELECT username FROM users WHERE username='$username'");
    40. $do_user_check = mysql_num_rows($user_check);
    41. $email_check = mysql_query("SELECT email FROM users WHERE email='$email'");
    42. $do_email_check = mysql_num_rows($email_check);
    43. if($do_user_check > 0){
    44. die("Username is already in use!<br>");
    45. }
    46. if($do_email_check > 0){
    47. die("Email is already in use!");
    48. }
    49. if($password != $pass_conf){
    50. die("Passwords don't match!");
    51. }
    52. $insert = mysql_query("INSERT INTO users (username, password, email) VALUES ('$username', '$password', '$email')");
    53. if(!$insert){
    54. die("There's little problem: ".mysql_error());
    55. }
    56. echo $username.", you are now registered. Thank you!<br><a href=login.php>Login</a> | <a href=index.php>Index</a>";
    57. }
    58. switch($act){
    59. default;
    60. register_form();
    61. break;
    62. case "register";
    63. register();
    64. break;
    65. }
    66. ?>
    Alles anzeigen


    Jetzt ist das alles im PHP Teil.
    So funktioniert es ja auch aber ich kann so das design nicht verändern und bekomme diesen Error
    Notice: Undefined index: username in \htdocs\index\test\index.php on line 9
    Notice: Undefined index: password in \htdocs\index\test\index.php on line 11