Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]Tabelka cheaters.php na przemian kolory (jasny, ciemny)
Forum PHP.pl > Forum > Przedszkole
Razor88
Witam. Jak w temacie. Chciałbym zrobić tak by kolumny poziome były na przemian kolorami, ciemniejszy druga kolumna jaśniejsza, trzecia kolumna znowu ciemniejsza itd . Dodatkowo by pionowa kolumna prędkości była na jeszcze inny kolor. Ktoś pomoże ? W linku wstawiłem plik. Pozdrawiam.
plik
lobopol
dodaj sobie jakiś licznik który będziesz zwiększał w pętli o 1 i przy kolumnie rób coś w stylu

  1. if($i%2) {
  2. echo 'klasa jasna';
  3. } else {
  4. echo 'klasa ciemna';
  5. }


dla poziomych nadawaj klasę tr, a dla pionowego daj klasę elementom td
PrinceOfPersia
nie lepiej użyć CSS i nth-child?
Razor88
Nie ukrywam, że jestem zielony w tym temacie. Czy moglibyście pokazać na kawałku kodu na jakiej zasadzie to ma iść ?
PrinceOfPersia
tak: http://jsfiddle.net/kjvG8/

Np.
  1. tr:nth-child(odd) {
  2. background:#eee;
  3. }

bez :nth-child(odd) zdefiniowałbyś styl dla wszystkich elementów "tr", a takto zaweżasz selekcję CSS jedynie do nieparzystych (odd) tr-ów.
Mozesz też dać tam numer, np. td:nth-child(1), zaznacza wszystkie pierwsze komórki (td).
Razor88
Dziekuję za pomoc ale nadal nie potrafię tego zrobić. Tabelka z przykładu trochę się różni od mojej w pliku. To ona:
Kod
print("<table width=100%>");

print("<table border=1 width=100% cellspacing=0 cellpadding=2>");
print("<tr align=center><td class=colhead>#</td>
<td class=colhead>Użytkownik</td>
<td class=colhead>Zarejestrowany</td>
<td class=colhead>Torrent</td>
<td class=colhead>Klient</td>
<td class=colhead>Prędko¶ć</td>
<td class=colhead>Wysłał</td>
<td class=colhead>Czas</td>
<td class=colhead>Leechów</td>
<td class=colhead>IP</td>
<td class=colhead>R</td></tr>\n");

$res = mysql_query("SELECT * FROM cheaters ORDER BY added DESC $limit") or sqlerr(__FILE__, __LINE__);
while ($arr = mysql_fetch_assoc($res))
{
$rrr = mysql_query("SELECT id, username, class, downloaded, uploaded FROM users WHERE id = $arr[userid]");
$aaa = mysql_fetch_assoc($rrr);

$rrr2 = mysql_query("SELECT name, leechers FROM torrents WHERE id = $arr[torrentid]");
$aaa2 = mysql_fetch_assoc($rrr2);

if($aaa["downloaded"] > 0)
{
$ratio = number_format($aaa["uploaded"] / $aaa["downloaded"], 3);
}
else
{
$ratio = "---";
}
$ratio = "<font color=" . get_ratio_color($ratio) . ">$ratio</font>";

$uppd = mksize($arr["upthis"]);


print("<tr><td align=center width=10>$arr[id]</td>");
print("<td align=left><b><a href=userdetails.php?id=$aaa[id]>$aaa[username]</a></b></td>");
print("<td align=center>$arr[added]</td>");
print("<td align=center><u><a href=details.php?id=$arr[torrentid]>$arr[torrentid]</a></u></td>");
print("<td align=center>$arr[client]</td>");
print("<td align=center>$arr[rate]/s</td>");
print("<td align=center>$uppd</td>");
print("<td align=center>$arr[timediff] sec</td>");
print("<td align=center>$aaa2[leechers]</td>");
print("<td align=center>$arr[userip]</td>");
print("<td class=\"tableb\" valign=\"top\" width=10><input type=\"checkbox\" name=\"remove[]\" value=\"" . $arr["id"] . "\"/></td>");
}
PrinceOfPersia
w jaki sposób się różni? Taka sama tabelka, czyli <table> a potem rzędy <tr> a w rzędach poszczególne komórki (<td>).

PS. zakładam (mam nadzieję) podstawową znajomość HTMLa i CSS.
Razor88
Zrobiłem coś takiego:

Kod
if($uc%2 == 0)


     $utc = "a08f74";

    else

     $utc = "bbaf9b";
  
    
print("<tr bgcolor=\"#$utc\"><td align=center width=10>$arr[id]</td>");
print("<td align=left><b><a href=userdetails.php?id=$aaa[id]>$aaa[username]</a></b></td>");
print("<td align=center>$arr[added]</td>");
print("<td align=center><u><a href=details.php?id=$arr[torrentid]>$arr[torrentid]</a></u></td>");
print("<td align=center>$arr[client]</td>");
print("<td align=center>$arr[rate]/s</td>");
print("<td align=center>$uppd</td>");
print("<td align=center>$arr[timediff] sec</td>");
print("<td align=center>$aaa2[leechers]</td>");
print("<td align=center>$arr[userip]</td>");
print("<td class=\"tableb\" valign=\"top\" width=10><input type=\"checkbox\" name=\"remove[]\" value=\"" . $arr["id"] . "\"/></td>");


Ale przez taką modyfikację zaznacza mi tabelkę w jednym kolorze tylko a nie na przemian
nospor
No ale zmienną $uc wypadałoby zwiększać w każdym obrocie pętli...
Razor88
Jestem w dziale przedszkole wybaczcie ale liczyłem na większą pomoc.
nospor
To że jesteś w dziale przedszkole nie zwalnia cię w żaden sposób z myślenia i słuchania tego co ci piszą....

Jak ci ktoś mówi, że masz zwiększać zmienną to naprawdę ciężko w stawić w ten kod:
$uc++;
?

  1. $uc++;
  2. if($uc%2 == 0)
  3. $utc = "a08f74";
  4. else
  5. $utc = "bbaf9b";
Razor88
Dziekuję za pomoc udało się z pionową kolumną też sobie poradziłem. Wygląda to tak:
Kod
$uc++;
    if($uc%2 == 0)
    $utc = "a08f74";
    else
    $utc = "bbaf9b";
print("<tr bgcolor=\"#$utc\"><td align=center width=10>$arr[id]</td>");
print("<td align=left><b><a href=userdetails.php?id=$aaa[id]>$aaa[username]</a></b></td>");
print("<td align=center>$arr[added]</td>");
print("<td align=center><u><a href=details.php?id=$arr[torrentid]>$arr[torrentid]</a></u></td>");
print("<td align=center>$arr[client]</td>");

print("<td bgcolor=\"red\"><align=center>$arr[rate]/s</body></td>");

print("<td align=center>$uppd</td>");
print("<td align=center>$arr[timediff] sec</td>");
print("<td align=center>$aaa2[leechers]</td>");
print("<td align=center>$arr[userip]</td>");
print("<td class=\"tableb\" valign=\"top\" width=10><input type=\"checkbox\" name=\"remove[]\" value=\"" . $arr["id"] . "\"/></td>");
]


Mam jeszcze jeden problem a nie chcę zakładać nowego tematu.
Chodzi mi o podlinkowanie wyświetlanych adresów ip w tabeli:
Kod
echo "<tr><td><a href=userdetails.php?id=".$row["id"]."><b>".$row["username"]."</b></a></td><td><strong>".$ratio."</strong></td><td>".$row["email"]."</td><td>".$row["ip"]."</td><td>".$row["added"]."</td><td>".$row["last_access"]."</td><td>".mksize($row["downloaded"])."</td><td>".mksize($row["uploaded"])."</td>


Czyli w tej części kodu
Kod
<td>".$row["ip"]."</td>

A strona jaka miała by wyświetlać się po kliknięciu w dane ip na liście to taka:
Kod
<a href=\"http://www.ripe.net/perl/whois?form_type=simple&full_query_string=&searchtext=$ip&do_search=Search\" target=_blank title=\"Whois $ip\">$ip</a></b>";


Nie bardzo wiem jak to złożyć do kupy. Czy ktoś by pomógł ?
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.