Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Czerwony nick w czacie :)
Forum PHP.pl > Forum > Przedszkole
bartek4175
Oto kod shoutobox.php:
  1. <head>
  2.  
  3. <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
  4.  
  5. </head>
  6. <?php
  7.  
  8. require_once("../zapytania.php");
  9. mysql_connect ("mysql3.superhost.pl","sh178151_admin","xxx"); //łącze z bazą ("serwer bazy","użytkownik","hasło")
  10. mysql_select_db ("sh178151_bartek4175"); //nazwa bazy
  11. mysql_query ("SET NAMES utf8"); //kodowanie znaków przydatne przy pobieraniu treści
  12.  
  13. function emotki($string) {
  14.  
  15. $emotikony = array(":D" => "http://firegifts.pl/images/emoticons/smilie5.gif",":)" => "http://firegifts.pl/images/emoticons/wink.gif", "lol2" => "http://emotikona.pl/emotikony/pic/01icon_lol2.gif", ":(" => "http://emotikona.pl/emotikony/pic/0sad.gif", ":P" => "http://emotikona.pl/emotikony/pic/0tongue.gif", "kurwa" => "http://firegifts.pl/images/emoticons/censored.gif", "huj" => "http://firegifts.pl/images/emoticons/censored.gif", "google" => "http://emotikona.pl/emotikony/pic/14icon_google.gif");
  16. foreach($emotikony as $tekst => $grafika) $string = str_replace($tekst,'<img src="'.$grafika.'" />',$string);
  17.  
  18. return $string;
  19. }
  20. $admin = mysql_query("SELECT * FROM users WHERE id = ".$data['id']."") or die;
  21.  
  22.  
  23. if(isset($_POST['wyslij']) && !empty($_POST['login']) && !empty($_POST['tresc']))
  24. {
  25. //Definicja zmiennych
  26. $login = mysql_real_escape_string(htmlspecialchars($_POST['login']));
  27. $tresc = mysql_real_escape_string(htmlspecialchars($_POST['tresc']));
  28. $data = date('Y-m-d H:i:s');
  29. $ip = $_SERVER['REMOTE_ADDR'];
  30.  
  31. //Wykonujemy zapytanie importujące zdefiniowane dane
  32. mysql_query ("INSERT INTO `posty` (`login`, `tresc`, `data`, `ip`) VALUES('$login', '$tresc', '$data', '$ip')");
  33.  
  34. //No i przenosimy użytkownika z powrotem do shoutboxa
  35. header('Location: '.$_SERVER['REQUEST_URI']);
  36. }
  37. else {
  38. ?><span id="licznik"><?
  39. //Pobieramy dane z bazy
  40. $query = mysql_query ("SELECT * FROM `posty` ORDER BY `data` DESC LIMIT 10");
  41. //Początek struktury tabeli
  42. echo '<table id="shoutbox">';
  43. //Pętla do wyświetlenia wszystkich wpisów
  44. while($shout=mysql_fetch_array($query)) {
  45. echo emotki('<tr class="wpis"><td>'
  46. .'<b> ');
  47.  
  48. echo emotki(''.$shout['login'].':</b></span> ' //wyświetlamy nick
  49. .$shout['tresc'] //wyświetlamy treść
  50. .'<br/><span class="data">'
  51. .$shout['data'] //wyświetlamy datę
  52. .'</span> ');
  53. ?></span><?
  54. if (($data['admin']) == 1){
  55. if (isset($_GET['akcja']))
  56. {
  57. switch ($_GET['akcja'])
  58. {
  59. case 'usun':
  60. mysql_query("DELETE FROM `posty` WHERE id = '" . (int)$_GET['id'] . "'") or die(mysql_error());
  61.  
  62. break;
  63. }
  64. }
  65. ?><a href="/chat/index.php?akcja=usun&id=<? echo''.$shout['id'].''; ?> "> <span style="color:red;"><b>X</b></a></span><?
  66. }
  67. if (($data['admin']) == 1){
  68. if (isset($_GET['akcja']))
  69. {
  70. switch ($_GET['akcja'])
  71. {
  72. case 'spamer':
  73. mysql_query("UPDATE `users` SET spamer='1' WHERE `login` = '".$_GET['login']."'") or die(mysql_error());
  74.  
  75.  
  76. break;
  77. }
  78. }
  79. ?><a href="/chat/index.php?akcja=spamer&login=<? echo''.$shout['login'].''; ?> "> <span style="color:green;"><b>S</b></a></span><?
  80. }
  81. echo emotki('</tr></td>');
  82. } //
  83.  
  84.  
  85. //Koniec struktury tabeli
  86. echo '</table>';
  87.  
  88. }
  89.  
  90.  
  91.  
  92. //print_r($_SERVER);
  93. if($data['spamer'] == 1){
  94. echo "<b><center>Posiadasz Status Spamera!</center></b>";
  95. } else {?>
  96. <form action="" method="POST" id="shoutbox">
  97. <?php require_once("../zapytania.php"); echo'<input type="hidden" name="login" value="'.$data['login'].'" />'; ?><br/>
  98. Treść: <input type="text" name="tresc" maxlength="125" />
  99. <button type="submit" name="wyslij">Napisz</button>
  100. </form>
  101. <?
  102. }
  103. ?>


Oto Kod Index.php:
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <title>ShoutBox</title>
  5. <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  6. <link rel="stylesheet" type="text/css" href="styles.css" />
  7. <style type="text/css">
  8. html,body{margin:0;padding:0}
  9. body{ background: #3399FF;
  10. font: 76% arial,sans-serif;text-align:left}
  11. p{margin:0 10px 10px}
  12. a{padding:5px; text-decoration:none; color:#000000;}
  13. #shoutbox { width:100%; font-size: 11px; text-align:left background: green;
  14. }
  15. #shoutbox .wpis { background: #BFBD93; text-align:left}
  16. #shoutbox .data { color: #444; font-size: 10px; }
  17. #shoutbox input { background: #BFBD93; text-align:left border: 1px solid #444; height: 13px; font-size: 11px; }
  18. #shoutbox button { background: #BFBD93; text-align:left border: 1px solid #444; height: 18px; font-size: 11px; }
  19. form { padding-left: 3px; }
  20. </style>
  21. <!--[if lte IE 6]><style type="text/css">#freecssfooter{position:absolute;}</style><![endif]-->
  22. </head>
  23. <body>
  24. <div id="extra">
  25.  
  26. <p><?php include('shoutbox.php'); ?></p>
  27. </div>


Chcę aby:
- Jeśli w bazie w users użytkownik o id $data['id'] dokładniej jeśli w tablce users kolumnie admin ma 1 to jego nick ma być czerwony


Próbowałem tak:
  1. if (($data['admin']) == 1){
  2. <span style="color:red;">....</span>
  3. }


ale wtedy ja jako admin widziałem wszystkie nicki na czerwono, a inni nic nie widzieli na czerwono.

POMOCY!
nospor
tyle czasu sie bawisz z tym swoim czatem to juz moglbys wiedziec co gdzie masz :/

Przeciez w $data trzymasz dane aktualnie zalogowanego usera.
A skoro chcesz zmieniac kolor dla danych wiadomosci to masz sprawdzac ADMIN w danych danej wiadomosci a nie w danych aktualnie zalgowanego usera. To przeciez logiczne.
bartek4175
Cytat(nospor @ 15.02.2014, 10:02:56 ) *
tyle czasu sie bawisz z tym swoim czatem to juz moglbys wiedziec co gdzie masz :/

Przeciez w $data trzymasz dane aktualnie zalogowanego usera.
A skoro chcesz zmieniac kolor dla danych wiadomosci to masz sprawdzac ADMIN w danych danej wiadomosci a nie w danych aktualnie zalgowanego usera. To przeciez logiczne.

  1. $admin = mysql_query("SELECT admin FROM users") or die;
  2. if (($admin) == 1){
  3. ?>
  4. <span style="color:red;">
  5. <?
  6. }

tak?


ok to chodzi:
  1. if (($shout['login']) == "Bartek4175"){
  2. ?>
  3. <span style="color:red;">
  4. <?
  5. }

tylko mój nick jest czerwony, tylko ja admin więc ok smile.gif
Ale chcę aby jak w admin == 1 a nie mój nick biggrin.gif
Turson
  1. $admin = mysql_query("SELECT admin FROM users") or die;
  2. if (($admin) == 1){
  3. ?>
  4. <span style="color:red;">
  5. <?
  6. }

facepalmxd.gif zajrzyj proszę do podstaw manuala zanim zaczniesz pisać

Cytat
tylko mój nick jest czerwony, tylko ja admin więc ok smile.gif
Ale chcę aby jak w admin == 1 a nie mój nick biggrin.gif

zależy gdzie masz trzymane info kto jest adminem. Kolumnie w tabeli users? Inna tabela?


Poza tym robisz czat w samym php? laugh.gif
bartek4175
Cytat(Turson @ 15.02.2014, 11:57:34 ) *
  1. $admin = mysql_query("SELECT admin FROM users") or die;
  2. if (($admin) == 1){
  3. ?>
  4. <span style="color:red;">
  5. <?
  6. }

facepalmxd.gif zajrzyj proszę do podstaw manuala zanim zaczniesz pisać


zależy gdzie masz trzymane info kto jest adminem. Kolumnie w tabeli users? Inna tabela?


Poza tym robisz czat w samym php? laugh.gif

w tablece users jest kolumna admin

tak w samym php, potem ajax i jquery itp...
Turson
jakoś tak
  1. $color = ($shout['admin']==1) ? "red" : "inherit";
  2. echo emotki('<span style="color:'.$color.'">'.$shout['login'].':</b></span> ' //wyświetlamy nick
  3. .$shout['tresc'] //wyświetlamy treść
  4. .'<br/><span class="data">'
  5. .$shout['data'] //wyświetlamy datę
  6. .'</span> ');
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.