Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: przegladanie profilu po zalogowaniu
Forum PHP.pl > Forum > Przedszkole
Yabol
Siemka mam taki kodzik do logowania
  1. login.php
  2.  
  3. <?php include'home.php'; ?>
  4. <div class=info>
  5. <ul>
  6. <form action=login1.php method=post>
  7. <li>Login</li>
  8. <li><input type=text id=text name=login class=nazwa></li>
  9. <li>Haslo</li>
  10. <li><input type=password id=text name=haslo class=nazwa></li>
  11. </ul>
  12. <ul>
  13. <li><input type=submit value=zaloguj id=button class=przycisk></li></ul>
  14. </div>

  1. login1.php
  2. <?php
  3. include 'home.php';
  4. echo '<div class=info>';
  5.  
  6. $Login=strip_tags($_POST['login']);
  7. $Password=strip_tags($_POST['haslo']);
  8. $_SESSION['User']=False; //Dla bezpieczeństwa
  9.  
  10. if(empty($Login) || empty($Password))
  11. {
  12.  echo '<ul><li>Nie podales loginu, bądz hasla</li></ul>';
  13.  exit;
  14. }
  15.  
  16. //Połączenie z bazą
  17. $polaczenie=mysql_connect('','','');
  18. $wybor=mysql_select_db(db158628);
  19.  
  20. $Query='SELECT haslo FROM rejestracja WHERE login=''.$Login.''';
  21. $SQL=mysql_query($Query) or die(mysql_error());
  22.  
  23. if(mysql_num_rows($SQL)==0)
  24. {
  25.  echo '<ul><li>Podany użytkownik nie istnieje, spróbuj <a href=login.php>ponownie </a>lub <a href=rejestracja.php>zarejestruj się</a></li></ul>';
  26.  exit;
  27. }
  28.  
  29. $Row=mysql_fetch_array($SQL, MYSQL_ASSOC);
  30. $UserPassword=$Row['haslo'];
  31.  
  32. if($Password==$UserPassword)
  33. {
  34.  $_SESSION['User']=$Login;
  35. echo '<meta http-equiv="refresh" content="3;url=index.php"><ul><li>zaraz zostaniesz przekierowany do strony głównej</li></ul>'; 
  36.  
  37. }
  38. else
  39. {
  40.  echo '<ul><li>Podano bledne haslo, spróbuj <a href=login.php>ponownie </a>lub <a href=rejestracja.php>zarejestruj się</a></li></ul>';
  41.  exit;
  42. }
  43. ?>

Nie mam pojecia jak po sprawdzeniu poprawnosci sesji, wyczytac z bazy dane uzytkownika o numerze id, znajdujacego sie aktualnie w sesji
probowalem czegos takiego ale nie wychodzi
  1. <?php
  2. include 'home.php';
  3. $polaczenie=mysql_connect('','','');
  4. $wybor=mysql_select_db(db158628);
  5.  
  6. ?>
  7.  
  8. <?php
  9. echo '<div class=info>';
  10.  
  11. $id=$_SESSION['User'];
  12. $q="SELECT * FROM rejestracja WHERE id='$id'";
  13. $ex=mysql_query($q);
  14. while($row=mysql_fetch_array($ex)){
  15. if$_SESSION['User']{
  16.  
  17. echo '<table><tr><td>'.$row[login].'</tr></td><table><tr><td>'.$row[haslo].'</tr></td>';
  18. }
  19. else
  20. {
  21. echo '<ul><li>zaloguj sie aby obejrzec swoj profil</li></ul>';
  22. }
  23. }
  24. ?>

dzieki z gory za pomoc
pozdrawiam
Cienki1980
Do $_SESSION["user"] zapisujesz wartośc $login .. a podczas zapytania przyrównujesz ją do pola ID w bazie danych.

TO na pewno są te same dane questionmark.gif
Yabol
nom te same. Pewnie chodzi Ci o to ze raz porownoje $_SESSION["User'] do $login a pozniej do $id, ale kompletnie tego nie rozumiem. Moglbys poprawic ten skrypt profil.php?? Nie wiem co tam nawala.
moj kod wyglada teraz tak
  1. profil.php
  2.  
  3. <?php
  4. include 'home.php';
  5. $polaczenie=mysql_connect('','','');
  6. $wybor=mysql_select_db(db158628);
  7.  
  8. ?>
  9.  
  10. <?php
  11. echo '<div class=info>';
  12.  
  13.  
  14.  
  15. $q="SELECT * FROM rejestracja WHERE login='$Login'";
  16. $ex=mysql_query($q);
  17. while($row=mysql_fetch_array($ex)){
  18.  
  19. if($_SESSION['User']=$Login){
  20. echo '<table><tr><td>'.$row[login].'</tr></td><table><tr><td>'.$row[haslo].'</tr></td>';
  21. }
  22. else
  23. {
  24. echo '<ul><li>zaloguj sie aby obejrzec swoj profil</li></ul>';
  25. }
  26. }
  27. ?>

ale nie wiem czemu nic mi sie nie wyswietla.
Cienki1980
w if'ie masz $_SESSION["user"]=$Login
a powinno być $_SESSION["user"]==$Login

Popraw i sprawdź
Yabol
nic sie nie wyswietla sad.gif . Dla sprawdzenia usunalem w select'cie WHERE login='$Login' to wyswietlilo mi sie tyle samo razy komunikat zebym sie zalogowal ile mam osob w bazie, niezaleznie od tego czy byl znak rownosci czy porownania.
Cienki1980
To wyświetl zmienną $Login i $_SESSION["user"] czy mają wartości takie jak powinny mieć.
Yabol
dobra poradzilem sobie jakos. Dla wszystkich zainteresowanych daje kod:
  1. <?php
  2. include 'home.php';
  3. if ($_SESSION['User'])
  4. { 
  5. echo '<div class=info>';
  6. $login=$_SESSION['User'];
  7. $polaczenie=mysql_connect('','','');
  8. $wybor=mysql_select_db(db158628);
  9. $zapytanie="SELECT * FROM rejestracja WHERE login='$login'";
  10. $q=mysql_query($zapytanie);
  11. while($row = mysql_fetch_array($q)) {
  12. echo '<table width=300 style=margin-left:150px;><tr valign=top><td>'.'profil uzytkownika: '.$row[login].'</td></tr>
  13. <tr valign=top><tr valign=top><td rowspan=5 valign=top><img src="'.$row[avatar].'"></td><td height=10 valign=top>Przejrzyj skrzynke</td>
  14. </tr>
  15. <tr height=10 valign=top>
  16. <td valign=top>Zobacz swoje komentarze</td>
  17. </tr>
  18. <tr height=10 valign=top> 
  19. <td valign=top>Zarzadzaj plikami</td></tr>
  20. <tr height=10 valign=top>
  21. <td valign=top><a href="edytuj.php?id='.$row['id'].'">Edytuj profil</a></td></tr></tr>
  22. </table></div>';
  23. } 
  24. } 
  25. else 
  26. { 
  27. echo '<div class=info><table style=margin-left:150px;><tr valign=top><td>Aby przejrzec swoj profil musisz miec zalozone konto. <a href="rejestracja.php">Zarejestruj sie</a> a jezeli juz to zrobiles, <a href="login.php">zaloguj sie</a></td></tr></table>';
  28. } 
  29. echo '</div>';
  30. ?>

pozdrawiam i dzieki za pomoc smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.