Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Zmiana tekstu HTML jeśli...
Forum PHP.pl > Forum > Przedszkole
ToFFiK
Mam kod który niżej przedstawię na wyswietlanie danych z bazy, jesli gość który ją podgląda jest adminem to ma dodatkowo edycje, ale chciałbym dodać taką opcje żeby sprawdzało pole "konto" i jesli wartość by była "2" to nick czyli ten tekst HTML był przekreslony (dla każdego)

  1. $characters .= '<table border="0" cellspacing="'.$theme['borderwidth'].'" cellpadding="'.$theme['tablespace'].'" class="tborder"><tr><td class="thead" colspan="4"><strong>Postacie gracza</strong></td></tr>';
  2.  
  3. $q = $db->query('SELECT uid,owner,name,minuty,godziny FROM players WHERE owner='.intval($mybb->input['uid']));
  4. if($db->num_rows($q) > 0)
  5. {
  6. while($char = $db->fetch_array($q))
  7. {
  8. $usercharacters[] = $char['player_uid'];
  9. $alt = alt_trow();
  10. $characters .= '<tr><td class="'.$alt.'">';
  11.  
  12. if($mybb->user['usergroup'] !=3 && $mybb->user['usergroup'] !=4 && !is_super_admin($mybb->user['uid'])) $characters .= '<strong>'.str_replace('_',' ',$char['name']).'</strong>';
  13. else $characters .= '<a href="index.php?action=editchar&uid='.$char['uid'].'" id="edit_char_'.$char['uid'].'"><strong>'.str_replace('_',' ',$char['name']).'</strong></a>';
  14.  
  15. $characters .= '<td class="'.$alt.'"><strong>'.floor($char['godziny']).'</strong>h <strong>'.($char['minuty']).'</strong>m</td></tr>';
  16. }
  17. }
  18. else
  19. {
  20. $characters .= '<tr><td class="trow1">Ten gracz nie ma zarejestrowanych postaci.</td></tr>';
  21. }
Daiquiri
Nie bardzo rozumiem w czym masz problem... dodaj pobieranie pozycji konto i warunek if ($char['konto'] == 2) to { wykonaj to co w klamrach }.
ToFFiK
  1. if($mybb->user['usergroup'] !=3 && $mybb->user['usergroup'] !=4 && !is_super_admin($mybb->user['uid'])) $characters .= '<strong>'.str_replace('_',' ',$char['name']).'</strong>';
  2. else $characters .= '<a href="index.php?action=editchar&uid='.$char['uid'].'" id="edit_char_'.$char['uid'].'"><strong>'.str_replace('_',' ',$char['name']).'</strong></a>';
  3.  
  4. if($char['konto'] == 2){
  5. $characters .= '<s><td class="'.$alt.'"></s><strong>'.floor($char['godziny']).'</strong>h <strong>'.($char['minuty']).'</strong>m</td></tr>';
  6. }
  7. else
  8. {
  9. $characters .= '<td class="'.$alt.'"><strong>'.floor($char['godziny']).'</strong>h <strong>'.($char['minuty']).'</strong>m</td></tr>';
  10. }


I wywala błędy, jeszcze nie za bardzo ogarniam PHP samemu pisząc od 0 ;f
Ogólnie do 1 dodałem <s> a w else jest normalnie jeśli nie ma konto=2
Daiquiri
A dodałeś pole konto w SELECT? Jakie błędy?
ToFFiK
  1. if($mybb->user['usergroup'] !=3 && $mybb->user['usergroup'] !=4 && !is_super_admin($mybb->user['uid'])) $characters .= '<strong>'.str_replace('_',' ',$char['name']).'</strong>';
  2. else $characters .= '<a href="index.php?action=editchar&uid='.$char['uid'].'" id="edit_char_'.$char['uid'].'"><strong>'.str_replace('_',' ',$char['name']).'</strong></a>';
  3.  
  4. if($char['konto'] == 2){
  5. $characters .= '<s><td class="'.$alt.'"></s><strong>'.floor($char['godziny']).'</strong>h <strong>'.($char['minuty']).'</strong>m</td></tr>';
  6. }
  7. else
  8. {
  9. $characters .= '<td class="'.$alt.'"><strong>'.floor($char['godziny']).'</strong>h <strong>'.($char['minuty']).'</strong>m</td></tr>';
  10. }


Działa już, tzn nie ma błedów, ale nie dodaje mi przekreślenia do nicku w HTMLu
Daiquiri
No to dodaj ten $char['name'] (bo wnioskuje, że o tym mowa) do warunku if($char['konto'] == 2) z podkreśleniem, a w else daj bez.
mls
A od kiedy to można znacznik td objąć innym tagiem niż tr? I to znacznik otwierający...
Bo zapis
  1. <s><td class="..."></s>
jest co najmniej niepoprawny.
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.