Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Utrzymanie logowania z forum
Forum PHP.pl > Forum > Przedszkole
licha
Witam orientuje się ktoś na jakiej zasadzie działa logowanie w w phpbb3 i utrzymanie tam sesji ? czy to wogóle nie działa na sesjach ?
CO np musiałbym zrobić by pobrać liczbe postów użytkownika np na podstronie moja_podstrona.php która nie jest częścią forum ?
Jake dane pobrać by otrzymać w pliku id zalogowanego użytkownika

podam na przykładzie bo nie wiem czy dobrze opisałem :
Użytkownik logujsie się, pisze posty i nagle przechodzi na podstronę moja_podstrona.php i tam wykonuje się pewien skrypt w stosunku do jego konta ( np dostaje 10 pkt jakiś) po czym wraca swobodnie na forum i dalej może działać.

Skrypt ten już mam teoretycznie działać powinien ale nie potrafię pobrać do niego danych użytkownika który zalogował się na forum phpbb3.0.10
CuteOne
I prawidłowo - wyobraź sobie, że po wejściu na strone xxx.pl pobiera z twojej przeglądarki wszystkie ciasteczka.. Wracając do pytania, możesz przekazać id użytkownika + jakiś unikalny hash do drugiego skryptu a tam sprawdzić jaki to użytkownik

ps. zakładam, że skrypt stoi na innej domenie niż samo forum
licha
Dzięki naprowadziłeś mnie na to co potrzebowałem, znalazłem sobie podobny artykuł tylko że po polsku bo u mnie z angielskim nie najlepiej ;/


mam taką stronę :
  1. <?php
  2. /**
  3.   *
  4.   * @autor Imię i nazwisko autora email_autora@domena.pl - <a href="http://mojastrona.pl" target="_blank">http://mojastrona.pl</a>
  5.   * @autor Nazwa autora inny_email@domena.pl - <a href="http://mojastrona.pl" target="_blank">http://mojastrona.pl</a>
  6.   *
  7.   * @paczka {NAZWAPACZKI}
  8.   * @wersja $Id$
  9.   * @prawa autorskie (c) 2009 Nazwa Grupy
  10.   * @licencja <a href="http://opensource.org/licenses/gpl-license.php" target="_blank">http://opensource.org/licenses/gpl-license.php</a> GNU Public License
  11.   *
  12.   */
  13.  
  14. /**
  15.   * @ignouj
  16.   */
  17. define('IN_PHPBB', true);
  18. // Określ ścieżkę do katalogu w którym zainstalowane jest phpBB3.
  19. $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
  20. $phpEx = substr(strrchr(__FILE__, '.'), 1);
  21. // Plik common.php jest wymagany.
  22. include($phpbb_root_path . 'common.' . $phpEx);
  23. include($phpbb_root_path . '/includes/functions_display.' . $phpEx);
  24.  
  25. // Start session management
  26. $user->session_begin();
  27. $auth->acl($user->data);
  28.  
  29. // określ style i/lub lokalizację
  30. // w tym przykładzie, określiliśmy że będziemy używać plik: moj_jezyk.php
  31. $user->setup('mods/moj_jezyk');
  32.  
  33.  
  34.  
  35. /*
  36.   * Wszystkie kodowania będą tutaj, ustawienia zmiennych, zapytania bazy danych, itd...
  37.   *
  38.   * To jest bardzo prosty przykład, mający na celu pokazanie Ci jak to działa.
  39.   */
  40. $example_variable = sprintf($user->lang['TIME_NOW'], $user->format_date(time()));
  41. $google_logo = '<a href="http://www.google.com/"><img src="http://www.google.com/intl/en_ALL/images/logo.gif" alt="Google" /></a>';
  42.  
  43. // Typowy przykład wysyłania zmiennych do szablonu.
  44. $template->assign_vars(array(
  45. 'EXAMPLE_VAR' => $example_variable,
  46. 'GOOGLE_LOGO' => $google_logo,
  47. 'MY_AVATAR' => get_user_avatar($user->data['user_avatar'], $user->data['user_avatar_type'], $user->data['user_avatar_width'], $user->data['user_avatar_height']),
  48. ));
  49.  
  50. /*
  51.   * przypisywanie stałych danych do tabeli.
  52.   * wszystkie ciągi językowe będą zawarte w pliku językowym,
  53.   */
  54. $some_array = array(
  55. 'example' => 'Przykład 1',
  56. 'demonstration' => 'Demo',
  57. ),
  58. 'example' => 'Przykład 2',
  59. 'demonstration' => 'Demo 2',
  60. ),
  61. );
  62.  
  63. /*
  64.   * prosty przykład przypisywania bloków zmiennych do szablonów
  65.   * To pozwoli Ci pokazać blok lub tabelę danych w szablonie
  66.   * jest to bardzo użyteczne dla takich rzeczy jak zapytania SQL do bazy danych i pokazywanie ich w szablonie.
  67.   */
  68. foreach ($some_array as $row)
  69. {
  70. $template->assign_block_vars('nazwa_bloku', array(
  71. 'EXAMPLE' => $row['example'],
  72. 'DEMO' => $row['demonstration'],
  73. ));
  74. }
  75.  
  76. // Tytuł strony, ta zmienna językowa powinna być określona w pliku językowym.
  77. page_header($user->lang['MOJ_TYTUL']);
  78.  
  79. // Ustaw nazwę pliku szablonu którego chcesz użyć dla tego pliku.
  80. // Nazwa pliku szablonu zlokalizowanego w /styles/twoj_styl/templates/.
  81. $template->set_filenames(array(
  82. 'body' => 'moj_szablon.html',
  83. ));
  84.  
  85. // Kończymy skrypt i pokazujemy stronę.
  86. page_footer();
  87.  
  88. ?>


jest to z poradnika( nawiasem mówiąc tych plików w phpbb3 nie rozumiem zupełnie) i wyświetla mi się takie coś :
www.weva.pl/forum/pkt.php

i chciałbym zamiast tego mieć swój skrypt z formularzem

login : zlom
pass : 111111

skrypt :
  1. <?
  2. require "connects.php";
  3. $kod = mysql_real_escape_string (trim($_POST['kod']));
  4.  
  5.  
  6. // Nie ma uzytkownika jeszcze
  7. $uz=2;
  8. echo"$kod<br>";
  9. $tymczasowa = mysql_query("SELECT `id` FROM `kody` WHERE `kod` = '$kod'");
  10. $tymczasowa = mysql_fetch_array($tymczasowa, MYSQL_NUM);
  11. $id=$tymczasowa[0];
  12. echo"$id<br>";
  13. if($id >0)
  14. {
  15. $idd=0;
  16. $tymczasowa = mysql_query("SELECT `uzyty` FROM `kody` WHERE `id` = '$id'");
  17. $tymczasowa = mysql_fetch_array($tymczasowa, MYSQL_NUM);
  18. $idd=$tymczasowa[0];
  19. echo"$idd";
  20. if($idd <1)
  21. {
  22. $tymczasowa = mysql_query("SELECT `strona` FROM `kody` WHERE `kod` = '$kod'");
  23. $tymczasowa = mysql_fetch_array($tymczasowa, MYSQL_NUM);
  24. $strona=$tymczasowa[0];
  25.  
  26. $tymczasowa = mysql_query("SELECT `typ` FROM `kody` WHERE `kod` = '$kod'");
  27. $tymczasowa = mysql_fetch_array($tymczasowa, MYSQL_NUM);
  28. $typa=$tymczasowa[0];
  29.  
  30. $tymczasowa = mysql_query("SELECT `id` FROM `kody` WHERE `typ` = '$typa' AND `przez` = '$uz'");
  31. $tymczasowa = mysql_fetch_array($tymczasowa, MYSQL_NUM);
  32. $typ=$tymczasowa[0];
  33.  
  34. if(empty($tymczasowa[0]))
  35. {
  36. $typ=0;
  37. }
  38.  
  39. echo"<br><br><br>$typ
  40. <br><br>
  41. $typa<br>";
  42. if($typ != $typa)
  43. {
  44. $tymczasowa = mysql_query("SELECT `punkty` FROM `bb_users` WHERE `user_id` = '$uz'");
  45. $tymczasowa = mysql_fetch_array($tymczasowa, MYSQL_NUM);
  46. $pkt=$tymczasowa[0];
  47. $tymczasowa = mysql_query("SELECT `pkt` FROM `kody` WHERE `kod` = '$kod'");
  48. $tymczasowa = mysql_fetch_array($tymczasowa, MYSQL_NUM);
  49. $pktplus=$tymczasowa[0];
  50.  
  51.  
  52. $pkt=$pkt+$pktplus;
  53. mysql_query("UPDATE `bb_users` SET `punkty` = '$pkt' WHERE `user_id` = '$uz' ");
  54. echo"Twoje konto zostalo zasilone $pktplus punktami ! Twoj aktualny stan to : $pkt punktow";
  55. mysql_query("UPDATE `kody` SET `uzyty` = '1' WHERE `kod` = '$kod' ");
  56. mysql_query("UPDATE `kody` SET `przez` = '$uz' WHERE `kod` = '$kod' ");
  57.  
  58.  
  59.  
  60.  
  61. }
  62. else
  63. {
  64. echo" Uzyles juz kodu tego typu z strony do ktorej nalezy ten kod";
  65. }
  66.  
  67.  
  68.  
  69.  
  70. }
  71. else
  72. {
  73. echo"Ten kod zostal juz uzyty";
  74. }
  75. }
  76. else
  77. {
  78. echo"Podano nieprawidłowy kod";
  79. }
  80.  
  81.  
  82.  
  83. ?>
  84. <html>
  85.  
  86. <body>
  87.  
  88. <form action="punkty.php" method="post">
  89.  
  90. <input name="kod" type="text" value="" />
  91.  
  92. <input type="submit" value="Wyslij" />
  93.  
  94. </form>
  95.  
  96. </body></html>
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.