Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Problem z $SESSION
ZeroCool
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 30.09.2010

Ostrzeżenie: (0%)
-----


Witam serdecznie,
w php "siedzę" od około 2-3 miesięcy. Ostatnio zacząłem się interesować tworzeniem systemu logowania/rejestracji na stronie. I napotkałem może niezbyt wielki, ale jednak problem.

Otóż, stworzyłem formularz do logowania, gdzie użytkownik podaje nazwę usera i hasło. Jeżeli poda poprawne dane, to tworzę sesję, której przypisuję nazwę użytkownika z bazy danych: $_SESSION['username'] = $dbusername; .

Po zalogowaniu na samej górze strony pojawia się Welcome i nazwa użytkownika. Pokazuje się ona praktycznie cały czas, aż do momentu, gdy nie kliknę na pasek adresu w przeglądarce i z tego poziomu przejdę na główną stronę. Wtedy wyświetla się już tylko Welcome. Co zrobić, by nazwa użytkownika (czyli, jak dobrze rozumiem również nazwa sesji) była widoczna cały czas?

Dodam, bo być może to jest istotne, że cały system logowania mam w pliku top.php, który w pliku index.php jest dodany na początku poprzez include("top.php");

Dziękuję już teraz za wszelkie wskazówki.

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ZeroCool
post
Post #2





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 30.09.2010

Ostrzeżenie: (0%)
-----


INDEX.PHP

  1. <?php
  2. ?>
  3. <html>
  4. <head>
  5. <link rel="Stylesheet" type="text/css" href="style.css">
  6. <link rel="stylesheet" type="text/css" href="shadowbox.css">
  7. <script type="text/javascript" src="shadowbox.js"></script>
  8. <script type="text/javascript" src="jquery.js"></script>
  9. <script type="text/javascript">
  10. Shadowbox.init();
  11. </script>
  12. </head>
  13. <body>
  14. <?php include("top.php"); ?>
  15. <div id="content">
  16. <div id="reg"></div>
  17. <?php
  18.  
  19. $page = $_GET['page'];
  20. if($page)
  21. {
  22. $path = $page.".php";
  23.  
  24. if(file_exists($path))
  25. {
  26. include($path);
  27. }
  28. else
  29. {
  30. echo "Taka strona nie istnieje.";
  31. }
  32. }
  33. else
  34. {
  35. echo "Content";
  36. }
  37.  
  38.  
  39. ?>
  40. </div>
  41. </body>
  42. </html>


TOP.PHP
  1. <div id="top">
  2. <?php
  3. if($_POST['login'])
  4. {
  5. $email = $_POST['email'];
  6. $password = $_POST['password'];
  7.  
  8. if($username&&$password)
  9. {
  10. require ('connect.php');
  11.  
  12. $query = mysql_query("SELECT * FROM users WHERE email='$email' AND password='$password'");
  13. $numrows = mysql_num_rows($query);
  14.  
  15. if($numrows!=0)
  16. {
  17. while ($row = mysql_fetch_assoc($query))
  18. {
  19. $dbid = $row['id'];
  20. $dbemail = $row['email'];
  21. $dbfirstname = $row['firstname'];
  22. $dblastname = $row['lastname'];
  23. $dbpassword = $row['password'];
  24. $dbcn = $row['cn'];
  25. $dbrn = $row['rn'];
  26. }
  27.  
  28. if($username==$dbusername&&$password==$dbpassword)
  29. {
  30. echo $_SESSION['username'] = $dbusername;
  31. }
  32. else
  33. {
  34. echo "Wrong username or password.";
  35. }
  36. }
  37. else
  38. echo "Wrong username or password.";
  39. }
  40. else
  41. {
  42. echo "Please enter a username and a password.";
  43. }
  44. }
  45. ?>
  46.  
  47. <?php
  48. if($_SESSION['username'])
  49. {
  50. echo "<font style='font-weight: normal;'>Welcome to my<font style='color: red;'>page</font>.pl | <font style='font-weight: normal;'>".date(d).".".date(m).".".date(Y)."</font>";
  51. }
  52. else
  53. {
  54. ?>
  55. <form action="index.php" method="POST">
  56. Username: <input type="text" name="email">
  57. Password: <input type="password" name="password"> <input type="submit" name="login" value="Login">
  58. | <a href="register.php" rel="shadowbox;height=300;width=350">Register</a> | <?php echo date(d).".".date(m).".".date(Y); ?></form>
  59. <?php
  60. }
  61. ?>
  62.  
  63. </div>
  64.  
  65. <?php
  66. $losowa = rand(1, 3);
  67. echo "<div id='logo'><img src='".$losowa.".JPG'></div>";
  68. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 04:43