Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> ShoutBox własna baza użytkowników
Randallmaster
post 17.03.2010, 07:58:49
Post #1





Grupa: Zarejestrowani
Postów: 677
Pomógł: 11
Dołączył: 18.11.2009

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


Witam serdecznie, korzystam z shoutbox nospor i niestety mam mały problem z własną bazą użytkowników. Udało mi się przekształcić kod aby korzystał z mojej bazy ale, nie wczytują się kolory i nie dodaje użytkownika onilne. Wina tego wszystkiego stoi na pewno po stronie logowania ponieważ używam swojego o to kod:

  1. <?
  2.  
  3. $message="&nbsp;";
  4.  
  5. $login=$_POST['login'];
  6. if($login) {
  7.  
  8. $uzytkownik=$_POST['uzytkownik'];
  9. $haslo=($_POST['haslo']);
  10.  
  11.  
  12. $host="localhost";
  13. $db_user="localhost";
  14. $db_password="localhost";
  15. $database="localhost";
  16. mysql_connect($host,$db_user,$db_password);
  17. mysql_select_db($database);
  18. // Sprawdzenie nazwy użtkownika i hasła.
  19. $rezultat=mysql_query("select * FROM logowanie WHERE uzytkownik='$uzytkownik' AND haslo='$haslo' AND active='1' AND ban='no'");
  20. if(@mysql_num_rows($rezultat)){
  21.  
  22. session_register("uzytkownik");
  23. header("location:home.php");
  24. }else {
  25.  
  26. $message="<font color='#ae2e2e'>Niepoprawne dane&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font>";
  27. }
  28. } // Koniec sprawdzania autoryzacji.
  29. ?></div>
  30.  
  31. <? echo $message; ?>
  32. <form id="form1" name="form1" method="post" action="<? echo $PHP_SELF; ?>">
  33. <table>
  34. <tr>
  35. <td>Użytkownik: </td>
  36. <td><input name="uzytkownik" type="text" id="uzytkownik" /></td>
  37. </tr>
  38. <tr>
  39. <td>Hasło: </td>
  40. <td><input name="haslo" type="password" id="haslo" /></td>
  41. </tr>
  42. <tr><div></div>
  43. <td colspan="2"><a href="zmianakonta.php">Zmiana konta</a> | <a href="przypomnienie.php">Przypomnij hasło</a>
  44. </td>
  45. </tr>
  46. <tr>
  47. <td></td>
  48. <td><input type='submit' class='login' name='login' value='login' ><alt='login'>
  49. </td>
  50. </tr>
  51. </table>
  52. </form>


oczywiście w localhost mam wpisane swoje dane... to są dane których używam ja przy logowaniu i jeśli logowanie jest poprawne wysyła mnie na home.php gdzie znajduje się shoutbox ale on czyta tylko nazwe uzytkownika ale nie dodaje do online... to jest natomiast kod ShoutBoxDisplay.php wersja 0.8 chyba, ponieważ ta najbardziej mi pasowala....

  1. <?php
  2. ?>
  3. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>ShoutBox</title>
  8. <link rel="stylesheet" href="css/ShoutBox.css" type="text/css" />
  9. <!--[if IE]>
  10. <link rel="stylesheet" type="text/css" href="css/ShoutBox_ie6.css" />
  11. <![endif]-->
  12.  
  13. <script type="text/javascript" src="scripts/advajax.js"></script>
  14. <script type="text/javascript" src="scripts/ShoutBox.js"></script>
  15.  
  16. </head>
  17. <body>
  18. <?php
  19. include('./ShoutBoxDBConnection.php');
  20. $ssb = !empty($_SESSION['uzytkownik']);
  21. $er = array();
  22. if (!empty($_POST)){
  23. if (empty($_POST['uzytkownik']))
  24. $er[] = 'Podaj nick';
  25. if (empty($_POST['haslo']))
  26. $er[] = 'Podaj hasło';
  27. if (empty($_POST['color']))
  28. $color = '000000';
  29. else{
  30. if (preg_match('/^[0-9a-f]{6}$/i',$_POST['color']))
  31. $color = $_POST['color'];
  32. else
  33. $er[] = 'Podany kolor jest nieprawidłowy';
  34. }
  35. if (empty($er)){
  36. $nick = htmlspecialchars($_POST['uzytkownik'], ENT_QUOTES);
  37. Connection::mysqlconnect();
  38. $sql = 'select id, haslo from logowanie where uzytkownik=\''.$nick.'\'';
  39. $res = mysql_query($sql);
  40. if (!$res)
  41. $er[] = 'Błąd bazy danych';
  42. else{
  43. if (mysql_numrows($res) > 0){
  44. $row = mysql_fetch_array($res);
  45. $pass = $row['haslo'];
  46. if ($pass == $_POST['haslo']){
  47. $ssb = true;
  48. $_SESSION['uzytkownik'] = $nick;
  49. $_SESSION['id'] = $row['id'];
  50. if (file_exists('online.txt'))
  51. unlink('online.txt');
  52. mysql_query('update logowanie set LAST_ACTIVE_TIME=now()'.(isset($_POST['savecolor']) ? ',COLOR=\''.$color.'\'' :''). ' where id='.$row['id']);
  53. $_SESSION['justlogged'] = true;
  54. }
  55. else
  56. $er[] = 'Taki login już istnieje, a ty podałeś błędne hasło';
  57. } else { //brak takiego loginu to dodajemy do bazy i logujemy
  58. if (!$res)
  59. $er[] = 'Błąd bazy danych';
  60. else {
  61. $_SESSION['uzytkownik'] = $nick;
  62. $_SESSION['id'] = mysql_insert_id();
  63. $_SESSION['justlogged'] = true;
  64. if (file_exists('online.txt'))
  65. unlink('online.txt');
  66. $ssb = true;
  67. }
  68. }
  69. }
  70. }
  71. }
  72.  
  73. if (!$ssb){
  74. if (!empty($er)){
  75. echo '<div style="color:red">';
  76. foreach ($er as $error)
  77. echo $error.'<br />';
  78. echo '</div>';
  79. }
  80. ?>
  81. <form method="post">
  82. <table>
  83. <tr>
  84. <td><label>Nick: </label></td>
  85. <td><input type="text" name="uzytkownik" /></td><td> (jesli jestes nowy - podaj nowy nick, jeśli masz już konto - podaj swój nick)</td>
  86. </tr><tr>
  87. <td><label>Hasło: </label></td>
  88. <td><input type="password" name="haslo" /></td><td>(jesli jestes nowy - podaj nowe hasło, jeśli masz już konto - podaj swoje hasło)</td>
  89. </tr><tr>
  90. <td><label>Kolor: </label></td>
  91. <td><input type="text" name="color" /></td><td>(podaj kolor, pod jakim chcesz być widziany. Kolor w postaci RRGGBB, np: FF00FF)</td>
  92. </tr><tr>
  93. <td colspan="3"><input type="checkbox" name="savecolor" checked="checked" />Zapisać kolor w bazie</td>
  94. </tr>
  95. <tr>
  96. <td colspan="3"><input type="submit" value="Start" /></td>
  97. </tr>
  98. </table>
  99. </form>
  100. <p>Nick "blocked" hasło "abcd" nie będzie mógł pisać.</p>
  101. <?php
  102. } else {
  103. ?>
  104. <div id="sb_main">
  105. <div id="sb_online"><div id="sb_online_title">UĹĽytkownicy on-line:</div><div id="sb_online_users"></div></div>
  106. <div id="sb_tools"><div id="sb_history" class="sb_history" title="Pobierz wcześniejsze" onclick="sb.getHistory();"></div><div id="sb_scroll_locking" class="sb_unlocked" title="Zablokuj scroll" onclick="ShoutBox.switchScroll();"></div></div>
  107. <div id="sb_body"></div>
  108. <form onsubmit="sb.sendMessage();return false;">
  109. <input type="text" id="sb_message" maxlength="255" />
  110. <input type="submit" id="sb_submit" value="Wyślij" />
  111. </form>
  112. </div>
  113.  
  114. <div id="sb_footer"><div id="sb_wait"></div><a href="http://nospor.vis-maior.net/index.php">ShoutBox 1.0</a> &copy; Robert (nospor) Nodzewski</div>
  115. <div id="sb_bbcode"><p><b>Bbcode, emotikony, komendy:</b></p>
  116. Na chwilę obecną w przykładzie dostępne jest bbcode: [b] [u] [i]. <br />
  117. Dostępne emotikony: :) :( laugh.gif tongue.gif <br />
  118. Dostępne komendy: /help, /nick, /me, /color
  119. </div>
  120.  
  121. <div id="sb_bbcode" ><p><b>Oco biega w pokazanym przykładzie:</b></p>
  122. - Każdy użytkownik może zdefiniować swój własny kolor<br />
  123. - Moderatorem jest uĹĽytkownik o nick'u <b>nospor</b> (czyli ja biggrin.gif)<br />
  124. - Każdy użytkownik może moderować swoje własne wiadomości. Usunięcie wiadomości polega na kliknięciu ikonki usuwania przy wiadomości.
  125. Edycja polega na kliknięciu na wiadomości. Pojawi nam się wówczas pole edycji. Zatwierdzenie edycji następuje po wyjściu z tego pola lub też wciśnięciu Entera.
  126. </div>
  127.  
  128. <script language="javascript">
  129. var sb = new ShoutBox('sb');
  130. sb.getMessages();
  131. </script>
  132. <?php
  133. }
  134. ?>
  135. </body>
  136. </html>


wie ktoś jak mogę przekształcić logowanie aby wszystko działało na wersji 0.8?questionmark.gif?
proszę o pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
nospor
post 17.03.2010, 08:49:13
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Czemu korzystasz z tak starej wersji? Ta wersja nie miała jeszcze uzytkowników online - a bynajmniej nie widze tego w kodzie tej wersji.
Co do kolorów:
$sb->SetExtraUser('ShoutBoxUser', 'ID', array('COLOR'=>'COLOR'));
OKreslasz tam swoją tabele z użytkownikami, nazwe pola bedacym id w tej tabeli, oraz pola ktore chcesz dodatkowo pobrac. Jest to podane w przykladzie w paczke 0.8


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Randallmaster
post 17.03.2010, 15:46:40
Post #3





Grupa: Zarejestrowani
Postów: 677
Pomógł: 11
Dołączył: 18.11.2009

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


Dziękuje za odpowiedź na w które miejsce mam dokładnie to wstawićquestionmark.gif Myślałem na wstawieniem nowej wersji ale chciałbym aby mogła pisać tylko osoba która jest zalogowana przez moją bazę reszta nie no i w innej części pokazać osoby online ale to wszystko jak na razie mnie przerosło więc zostanę przy tym co mam smile.gif

Napisał byś mi gdzie mógłbym tamto dodać?

Znalazłem to i mam to w kodzie ale chciałbym zauważyć że czyta mi kolory jak się zaloguje przez Pańskie logowanie natomiast jak przez moje nie czyta kolorów sad.gif
Go to the top of the page
+Quote Post
nospor
post 17.03.2010, 20:12:36
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No a ustawiles kolory dla uzytkowników? Tabela uzytkowników posiada pole COLOR z poprawnie wpisaną wartoscią?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 18.06.2025 - 07:14