Witam, z PHP zaczynam podobnie jak z HTML i CSS (Można nawet zobaczyć moje pierwsze posty tutaj). Robię Panel Gracza SAMP* w MyBB. Chcę zrobić kolorowe nicki w graczach online. Z samym wyświetleniem tego pomógł mi Supryk, za co bardzo dziękuję.
Mój obecny kod:
Kod:
$query="SELECT * FROM SavePlayer WHERE Nick='".htmlentities($sValue["nickname"])."'";
$result=mysql_query($query);
$i=mysql_result($result,0,"rangas");
if ($i == 4)
{
echo "<span class=\"color:red\">.htmlentities($sValue["nickname"]).</span>";
}
Można się domyślić że nie działa. Proszę o pomoc.
SAMP* = GTA San Andreas Multiplayer, gra sieciowa.
.htmlentities($sValue["nickname"]). = Nick gracza online.
rangas = kolumna w MySQL w której są napisane rangi administracyjne np. 4 = Head Admin
SavePlayer = tabela w której są zarejestrowani gracze.
musisz pokazać caly kod a nie wycinek
zaklada ze zapytanie wykonujesz w jakies pentli już
skorzystalbym z
$reputationlevel = $db->fetch_array($query);
zamiast
$result=mysql_query($query);
$i=mysql_result($result,0,"rangas");
if($reputationlevel['rangas'] == 4)
zaklada ze zapytanie wykonujesz w jakies pentli już
zapytanie w Twoim przypadku musisz zrobić w pętli foreach
skorzystałbym z
Kod:
$reputationlevel = $db->fetch_array($query);
zamiast
Kod:
$result=mysql_query($query);
$i=mysql_result($result,0,"rangas");
i pożniej
Kod:
if($reputationlevel['rangas'] == 4)
Zrobiłem tak ale nie działa
Kod:
Parse error: syntax error, unexpected '"', expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /home/p407924/public_html/home.php(7) : eval()'d code(119) : eval()'d code on line 61
A tak wgl $db->fetch_array($query) w tym przypadku moge uzyc?
Boże Bożenko ...
pokaż szablon po edycji ...
Powiedz skąd mamy wiedzieć co masz teraz?
tu jest źle
Kod PHP:
echo "<span class=\"color:red\">.htmlentities($sValue["nickname"]).</span>";
to jest zbędne
Kod PHP:
$admin=mysql_result($result,0,"rangas");
zapytanie (niestety - bo będzie ich dużo) musi być w pętli foreach() i w ifie wyswietlasz nick w zaleznosci od grupy
Korzystasz z edytora który podkreśla skladnie języka PHP?
Korzystam z Notepad++, więc tak
A no tak, kolor w klasie, zrobiłem tak:
Kod:
<html>
<head>
<title>{$mybb->settings['bbname']}</title>
{$headerinclude}
</head>
<body id="panel">
{$header}
<br />
<div class="thead">
<ul class="menu_gorne">
<li><a class="activeMenu" href="home.php">Strona Główna</a></li>
<li><a href="szukajgracza.php">Gracze</a></li>
<li><a href="#">TOP Listy</a></li>
<li><a href="#">Gangi</a></li>
<li><a href="#">Skład</a></li>
</ul>
</div>
<div class="info_podglad">
<div class="calosc_podglad">
<div class="lewa_podglad">
<ul class="tabs">
<li class="active"><a href="home.php">Gracze OnLine</a></li>
<li><a href="staty.php">Statystyki</a></li>
<li><a href="mapa.php">Mapa Świata</a></li>
<li style="border-bottom: none !important;"><a href="bany.php">Bany</a></li>
</ul>
</div>
<div style="margin-top: 69px;" class="prawa_podglad">
<div class="tab_container">
<div style="display: block;" id="tab1" class="tab_content">
<div class="thead">
<div style="margin-top: 5px;"><strong>Gracze OnLine</strong></div>
</div>
<table width="400">
<tr>
<td><b>ID</b></td>
<td><b>Nick</b></td>
<td><b>Respekt</b></td>
</tr>
<?php
$adres_ip_serwera_mysql_z_baza_danych = 'mysql-fr1.ServerProject.pl';
$nazwa_bazy_danych = 'xxxxx';
$login_bazy_danych = 'xxxx';
$haslo_bazy_danych = 'xxxx';
if ( !mysql_connect($adres_ip_serwera_mysql_z_baza_danych,
$login_bazy_danych,$haslo_bazy_danych) ) {
echo 'Nie moge polaczyc sie z baza danych';
exit (0);
}
if ( !mysql_select_db($nazwa_bazy_danych) ) {
echo 'Blad otwarcia bazy danych';
exit (0);
}
$query="SELECT * FROM SavePlayer WHERE Nick='".htmlentities($sValue["nickname"])."'";
$reputationlevel = $db->fetch_array($query);
require "panel/SampQueryAPI.php";
$query = new SampQueryAPI('80.88.90.213', '7777');
if($query->isOnline())
{
$aInformation = $query->getInfo();
$aServerRules = $query->getRules();
$aPlayers = $query->getDetailedPlayers();
if(!is_array($aPlayers) || count($aPlayers) == 0)
{
echo '<center><br><br><b>Brak graczy na serwerze! :(</b></center>';
}
else
{
foreach($aPlayers as $sValue)
{
echo "<tr>";
echo "<td>".$sValue["playerid"]."</td>";
echo "<td>if($reputationlevel['rangas'] == 4)
{
echo "<span style=\"color:red\">.htmlentities($sValue["nickname"]).</span>";
}
if($reputationlevel['rangas'] == 3)
{
echo "<span style=\"color:purple\">.htmlentities($sValue["nickname"]).</span>";
}
if($reputationlevel['rangas'] == 2)
{
echo "<span style=\"color:yellow\">.htmlentities($sValue["nickname"]).</span>";
}
if($reputationlevel['rangas'] == 1)
{
echo "<span style=\"color:white\">.htmlentities($sValue["nickname"]).</span>";
}
if($reputationlevel['rangas'] == 0)
{
echo "<span style=\"text-shadow: 0px 0px 10px #D0E8FF; color: #D0E8FF;\">.htmlentities($sValue["nickname"]).</span>";
}
</td>";
echo "<td>".$sValue["score"]."</td>";
echo "</tr>";
}
}
}
else
{
echo '<center><br><br><b>Brak graczy na serwerze! :(</b></center>';
}
if ( !mysql_close() ) {
echo 'Nie moge zakonczyc polaczenia z baza danych';
exit (0);
}
?>
</table>
</div> </div> </div> </div>
</div>
</div>
</div>
<br>
<div id="board_footer"><p id="copyright"> 2015 <b>X3nO, Panel Version: 1.0</b></p></div>
{$footer}
</body>
</html>
Kod:
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /home/p407924/public_html/home.php(7) : eval()'d code(135) : eval()'d code on line 46
to puste </td>"; pod listą warunkową powoduje problem
i nadal masz to zle - nie zadziala
Kod:
<html>
<head>
<title>{$mybb->settings['bbname']}</title>
{$headerinclude}
</head>
<body id="panel">
{$header}
<br />
<div class="thead">
<ul class="menu_gorne">
<li><a class="activeMenu" href="home.php">Strona Główna</a></li>
<li><a href="szukajgracza.php">Gracze</a></li>
<li><a href="#">TOP Listy</a></li>
<li><a href="#">Gangi</a></li>
<li><a href="#">Skład</a></li>
</ul>
</div>
<div class="info_podglad">
<div class="calosc_podglad">
<div class="lewa_podglad">
<ul class="tabs">
<li class="active"><a href="home.php">Gracze OnLine</a></li>
<li><a href="staty.php">Statystyki</a></li>
<li><a href="mapa.php">Mapa Świata</a></li>
<li style="border-bottom: none !important;"><a href="bany.php">Bany</a></li>
</ul>
</div>
<div style="margin-top: 69px;" class="prawa_podglad">
<div class="tab_container">
<div style="display: block;" id="tab1" class="tab_content">
<div class="thead">
<div style="margin-top: 5px;"><strong>Gracze OnLine</strong></div>
</div>
<table width="400">
<tr>
<td><b>ID</b></td>
<td><b>Nick</b></td>
<td><b>Respekt</b></td>
</tr>
<?php
$adres_ip_serwera_mysql_z_baza_danych = 'mysql-fr1.ServerProject.pl';
$nazwa_bazy_danych = 'xxxxx';
$login_bazy_danych = 'xxxx';
$haslo_bazy_danych = 'xxxx';
if ( !mysql_connect($adres_ip_serwera_mysql_z_baza_danych,
$login_bazy_danych,$haslo_bazy_danych) ) {
echo 'Nie moge polaczyc sie z baza danych';
exit (0);
}
if ( !mysql_select_db($nazwa_bazy_danych) ) {
echo 'Blad otwarcia bazy danych';
exit (0);
}
$query="SELECT * FROM SavePlayer WHERE Nick='".htmlentities($sValue["nickname"])."'";
$reputationlevel = $db->fetch_array($query);
require "panel/SampQueryAPI.php";
$query = new SampQueryAPI('80.88.90.213', '7777');
if($query->isOnline())
{
$aInformation = $query->getInfo();
$aServerRules = $query->getRules();
$aPlayers = $query->getDetailedPlayers();
if(!is_array($aPlayers) || count($aPlayers) == 0)
{
echo '<center><br><br><b>Brak graczy na serwerze! :(</b></center>';
}
else
{
foreach($aPlayers as $sValue)
{
echo "<tr>";
echo "<td>".$sValue["playerid"]."</td>";
echo "<td>if($reputationlevel['rangas'] == 4)
{
echo "<span style=\"color:red\">.htmlentities($sValue["nickname"]).</span>";
}
if($reputationlevel['rangas'] == 3)
{
echo "<span style=\"color:purple\">.htmlentities($sValue["nickname"]).</span>";
}
if($reputationlevel['rangas'] == 2)
{
echo "<span style=\"color:yellow\">.htmlentities($sValue["nickname"]).</span>";
}
if($reputationlevel['rangas'] == 1)
{
echo "<span style=\"color:white\">.htmlentities($sValue["nickname"]).</span>";
}
if($reputationlevel['rangas'] == 0)
{
echo "<span style=\"text-shadow: 0px 0px 10px #D0E8FF; color: #D0E8FF;\">.htmlentities($sValue["nickname"]).</span>";
}
echo "</td>";
echo "<td>".$sValue["score"]."</td>";
echo "</tr>";
}
}
}
else
{
echo '<center><br><br><b>Brak graczy na serwerze! :(</b></center>';
}
if ( !mysql_close() ) {
echo 'Nie moge zakonczyc polaczenia z baza danych';
exit (0);
}
?>
</table>
</div> </div> </div> </div>
</div>
</div>
</div>
<br>
<div id="board_footer"><p id="copyright"> 2015 <b>X3nO, Panel Version: 1.0</b></p></div>
{$footer}
</body>
</html>
zrobiłem w pętli foreach i w if`ach
zapytanie tez ma tam byc
coś slabo Ci podkreśla skladnie
["nickname"]
zamien na
['nickname']
bo krzaczy
ostatni raz dam Ci gotowy kod, najpierw siię podcz, poczytaj
Kod PHP:
<html>
<head>
<title>{$mybb->settings['bbname']}</title>
{$headerinclude}
</head>
<body id="panel">
{$header}
<br />
<div class="thead">
<ul class="menu_gorne">
<li><a class="activeMenu" href="home.php">Strona Główna</a></li>
<li><a href="szukajgracza.php">Gracze</a></li>
<li><a href="#">TOP Listy</a></li>
<li><a href="#">Gangi</a></li>
<li><a href="#">Skład</a></li>
</ul>
</div>
<div class="info_podglad">
<div class="calosc_podglad">
<div class="lewa_podglad">
<ul class="tabs">
<li class="active"><a href="home.php">Gracze OnLine</a></li>
<li><a href="staty.php">Statystyki</a></li>
<li><a href="mapa.php">Mapa Świata</a></li>
<li style="border-bottom: none !important;"><a href="bany.php">Bany</a></li>
</ul>
</div>
<div style="margin-top: 69px;" class="prawa_podglad">
<div class="tab_container">
<div style="display: block;" id="tab1" class="tab_content">
<div class="thead">
<div style="margin-top: 5px;"><strong>Gracze OnLine</strong></div>
</div>
<table width="400">
<tr>
<td><b>ID</b></td>
<td><b>Nick</b></td>
<td><b>Respekt</b></td>
</tr>
<?php
$adres_ip_serwera_mysql_z_baza_danych = 'mysql-fr1.ServerProject.pl';
$nazwa_bazy_danych = 'xxxxx';
$login_bazy_danych = 'xxxx';
$haslo_bazy_danych = 'xxxx';
if ( !mysql_connect($adres_ip_serwera_mysql_z_baza_danych,
$login_bazy_danych,$haslo_bazy_danych) ) {
echo 'Nie moge polaczyc sie z baza danych';
exit (0);
}
if ( !mysql_select_db($nazwa_bazy_danych) ) {
echo 'Blad otwarcia bazy danych';
exit (0);
}
require "panel/SampQueryAPI.php";
$query = new SampQueryAPI('80.88.90.213', '7777');
if($query->isOnline())
{
$aInformation = $query->getInfo();
$aServerRules = $query->getRules();
$aPlayers = $query->getDetailedPlayers();
if(!is_array($aPlayers) || count($aPlayers) == 0)
{
echo '<center><br><br><b>Brak graczy na serwerze! :(</b></center>';
}
else
{
foreach($aPlayers as $sValue)
{
$query="SELECT * FROM SavePlayer WHERE Nick='".htmlentities($sValue['nickname'])."'";
$reputationlevel = $db->fetch_array($query);
echo "<tr>";
echo "<td>".$sValue["playerid"]."</td>";
if($reputationlevel['rangas'] == 3)
{
echo "<span style=\"color:purple\">.htmlentities($sValue['nickname']).</span>";
}
if($reputationlevel['rangas'] == 2)
{
echo "<span style=\"color:yellow\">.htmlentities($sValue['nickname']).</span>";
}
if($reputationlevel['rangas'] == 1)
{
echo "<span style=\"color:white\">.htmlentities($sValue['nickname']).</span>";
}
if($reputationlevel['rangas'] == 0)
{
echo "<span style=\"text-shadow: 0px 0px 10px #D0E8FF; color: #D0E8FF;\">.htmlentities($sValue['nickname']).</span>";
}
echo "<td>".$sValue["score"]."</td>";
echo "</tr>";
}
}
}
else
{
echo '<center><br><br><b>Brak graczy na serwerze! :(</b></center>';
}
if ( !mysql_close() ) {
echo 'Nie moge zakonczyc polaczenia z baza danych';
exit (0);
}
?>
</table>
</div> </div> </div> </div>
</div>
</div>
</div>
<br>
<div id="board_footer"><p id="copyright"> 2015 <b>X3nO, Panel Version: 1.0</b></p></div>
{$footer}
</body>
</html>
tak wkleilem
zdaje mi sie ze zmienna $query jest zla
$reputationlevel = $db->fetch_array($query);
zdefiniowana jest:
$query = new SampQueryAPI('80.88.90.213', '7777');
i
$query="SELECT * FROM SavePlayer WHERE Nick='".htmlentities($sValue['nickname'])."'";