Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Sesja
Forum PHP.pl > Forum > Przedszkole
Kenexos
Witam
Jak mogę za pomocą skryptu wyciągnąć user_id (id) bo już tu jest zrobione by wyciągnęło username i access ale jak próbuje dorobić user_id to się nieda;/

  1. <?
  2. require_once('config.php'); // załaczamy plik config.php
  3.  
  4. function usun($data){
  5.  
  6. GLOBAL $dbc;
  7. if (ini_get('magic_quotes_gpc')){
  8. $data = stripslashes($data);
  9. }
  10.  return mysql_real_escape_string($data, $dbc);
  11. }
  12. if (isset($_POST['submit'])){
  13.  
  14. if (empty($_POST['login'])){
  15. $message .= '<font class="blad">Nie podałeś loginu</font><br />';
  16. $l = FALSE;
  17. }else{
  18. $l = usun($_POST['login']);
  19. }
  20.  
  21. if (empty($_POST['haslo'])){
  22. $message .= '<font class="blad">Nie podałeś hasła</font><br />';
  23. $h = FALSE;
  24. }else{
  25. $h = usun($_POST['haslo']);
  26. }  
  27. if ( $l && $h ){
  28.  
  29. $query = "SELECT username, access  FROM user WHERE username='$l' AND haslo=md5('$h')";
  30. $result = mysql_query($query);
  31. $row = mysql_fetch_array ($result, MYSQL_ASSOC); 
  32.  if($row){
  33.  
  34. $_SESSION['username'] = $row['username'];
  35.  $_SESSION['access'] = $row['access'];
  36.  
  37.  
  38.  
  39. $_GET['cmd'] = 'ok';
  40. header ("Location: index.php"); // przekierowuje nas na jaka strone chcemy
  41. }else{
  42. $message .= '<font class="blad">Błędne hasło lub login</font><br />';
  43. }
  44. }else{
  45. $message .= '<font class="blad">Spróbuj jeszcze raz</font>';
  46. }
  47. }
  48. ?>
  49. <? if(!$_SESSION['username'] || $_SESSION['access']=="") { ?>
  50.  
  51.  <form method="post" action="<? echo $_SERVER['PHP_SELF']; ?>">
  52. <table align="center" border="0">
  53. <tr>
  54. <td align="right" class="uni_01">Login:</td>
  55. <td><input type="text" name="login" size="15"></td>
  56. </tr>
  57. <tr>
  58. <td align="right" class="uni_01">hasło:</td>
  59. <td><input type="text" name="haslo" size="15"></td>
  60. </tr>
  61. <tr>
  62. <td align="right" class="uni_01"> </td>
  63. <td>
  64. <p align="center"><input style="font-weight: bold;" type="submit" name="submit" value="loguj">
  65. </td></tr>
  66. </table>
  67. </form>
  68. <? } else { ?><? } ?>
<?php
session_start();
$username = $_SESSION['username'];
?>
<?php
session_start();
if(!session_is_registered("username")){ // Sprawdza zmienną sesji.
header("location:index.php"); // Przekierowanie do index.php
}
?>[/PHP]
Pomoże ktośquestionmark.gif
Bo potrzebuje id czyli user_id do tego:
$ilew=mysql_num_rows(mysql_query("select wiad_id from wiadomosci where wiad_przeczytane=0 and wiad_do=".$_SESSION["user_id"]." and wiad_czyj=0"));

a jak narazie niemam z czego pobrac tongue.gif
JoShiMa
A w którym miejscu i skąd Ci to user_id wpada lub ma wpadać do sesji?
Kenexos
jak skąd?? ja właśnie chce to dorobić
bo access też tam jest dorobione i jak dorobić tak samo user_id (id) z bazy danych;/
JoShiMa
Cytat(Kenexos @ 8.08.2008, 16:25:13 ) *
jak skąd?? ja właśnie chce to dorobić
bo access też tam jest dorobione i jak dorobić tak samo user_id (id) z bazy danych;/

A skąd mamy wiedzieć, gdzie Ty w bazie danych masz ID?
Kenexos

masz ss bazy.. mam tlyko ten plik co wkleiłem i to wszystko jakoś tamte sesje skądś się wzięły..tongue.gif
JoShiMa
  1. <?php
  2. $query = "SELECT username, access, user_id  FROM user WHERE username='$l' AND haslo=md5('$h')";
  3.  
  4.  
  5. ...
  6.  
  7.  
  8. $_SESSION['user_id'] = $row['user_id'];
  9.  
  10. ?>


Zanim zabierzesz się za robotę zajrzyj do jakiegoś kursu, kup książkę, poczytaj, spróbuj zrozumieć co w ogóle robi ten skrypt, który właśnie próbujesz przerobić.
Kenexos
  1. <?php
  2.  if(count($_SESSION) == 2)
  3.  
  4.  {
  5. echo 'Imię: <b>'.$_SESSION['user_id'].'</b><br>Prawa:<b> '.$_SESSION['access'].'</b>';
  6.  }
  7.  
  8. ?>

I dalej w user_id się nie pojawia.. a access się pojawia..tongue.gif
JoShiMa
Boje się zgadnąć gdzie to wstawiłeś. Wybacz, ale nie będę tego za Ciebie pisać.
Kenexos
No wkleiłem tam gdzie napisałeś..
if ( $l && $h ){

$query = "SELECT username, access, user_id FROM user WHERE username='$l' AND haslo=md5('$h')";

$result = mysql_query($query);
JoShiMa
Cytat(Kenexos @ 8.08.2008, 17:07:37 ) *
No wkleiłem tam gdzie napisałeś..


Napisałaś

Niedziała? 1. Zrobiłes błąd? 2. Nie masz takiego pola w tabeli?
Kenexos
Nie wiem.. tam koło tego zmieniłem access wszędzie a i tak pobiera go z zmiennej skąd? nie wiem mam tylko ten plik..;/ :
  1. <?php
  2. $username = $_SESSION['username'];
  3. ?>
  4. <?php
  5. if(!session_is_registered("username")){ // Sprawdza zmienną sesji.
  6. header("location:index.php"); // Przekierowanie do index.php
  7. }
  8. ?>
  9.  
  10.  
  11.  
  12.  
  13. <?
  14. session_name('username'); // Nazwa sesji 
  15. if($_SESSION['access'] != 'admin')
  16. header ("Location: http://" . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . "error.php"); //przekierowanie jeżeli nie istnieje sesja
  17.  else {
  18. echo '<a href="index.php?show=admin/admin">Panel admina!</a>';
  19. }
  20. ?>
  21.  
  22.  
  23.  
  24. <?
  25. require_once('config.php'); // załaczamy plik config.php
  26.  
  27. function usun($data){
  28.  
  29. GLOBAL $dbc;
  30. if (ini_get('magic_quotes_gpc')){
  31. $data = stripslashes($data);
  32. }
  33.  return mysql_real_escape_string($data, $dbc);
  34. }
  35. if (isset($_POST['submit'])){
  36.  
  37. if (empty($_POST['login'])){
  38. $message .= '<font class="blad">Nie podałeś loginu</font><br />';
  39. $l = FALSE;
  40. }else{
  41. $l = usun($_POST['login']);
  42. }
  43.  
  44. if (empty($_POST['haslo'])){
  45. $message .= '<font class="blad">Nie podałeś hasła</font><br />';
  46. $h = FALSE;
  47. }else{
  48. $h = usun($_POST['haslo']);
  49. }  
  50. if ( $l && $h ){
  51.  
  52. $query = "SELECT username, access, user_id  FROM user WHERE username='$l' AND haslo=md5('$h')";
  53.  
  54. $result = mysql_query($query);
  55. $row = mysql_fetch_array ($result, MYSQL_ASSOC); 
  56.  if($row){
  57.  
  58.  
  59. $_SESSION['username'] = $row['username'];
  60.  $_SESSION['access'] = $row['access'];
  61.  
  62.  
  63.  
  64. $_GET['cmd'] = 'ok';
  65. header ("Location: index.php"); // przekierowuje nas na jaka strone chcemy
  66. }else{
  67. $message .= '<font class="blad">Błędne hasło lub login</font><br />';
  68. }
  69. }else{
  70. $message .= '<font class="blad">Spróbuj jeszcze raz</font>';
  71. }
  72. }
  73. ?>
  74. <? if(!$_SESSION['username'] || $_SESSION['access']=="") { ?>
  75.  
  76.  <form method="post" action="<? echo $_SERVER['PHP_SELF']; ?>">
  77. <table align="center" border="0">
  78. <tr>
  79. <td align="right" class="uni_01">Login:</td>
  80. <td><input type="text" name="login" size="15"></td>
  81. </tr>
  82. <tr>
  83. <td align="right" class="uni_01">hasło:</td>
  84. <td><input type="text" name="haslo" size="15"></td>
  85. </tr>
  86. <tr>
  87. <td align="right" class="uni_01"> </td>
  88. <td>
  89. <p align="center"><input style="font-weight: bold;" type="submit" name="submit" value="loguj">
  90. </td></tr>
  91. </table>
  92. </form>
  93. <? } else { ?><? } ?>
  94.  
  95.  
  96. <div align="center">
  97. <? if(isset($message)){
  98. echo $message;
  99.  }
  100. ?>
  101. </div>
  102. <br>
  103. <?php
  104.  if(count($_SESSION) == 2)
  105.  
  106.  {
  107. echo 'Imię: <b>'.$_SESSION['user_id'].'</b><br>Prawa:<b> '.$_SESSION['access'].'</b>';
  108.  }
  109.  
  110. ?>
JoShiMa
A gdzie:

  1. <?php
  2. $_SESSION['user_id'] = $row['user_id'];
  3. ?>
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.