Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] zmienne kolory w divie bez while
Forum PHP.pl > Forum > Przedszkole
pijanyadmin
odczytuje wartości zmiennych z bazy, potem w includowanym pliku je wyświetlam... nie opłaca mi się jeszcze raz łaczyć z baza przez while...

  1. <?php
  2. $i++;
  3. $class = ($i%2==1) ? "pierwszy" : "drugi";
  4. ?>


Kod
<div class"'.$class.">zxczsdfsdfsdf</div>
<div class"'.$class.">zxcz</div>


tak to wygląda z while. Można taki sam efekt uzyskać bez while?
Crozin
Możesz skorzystać z pozostałych trzech pętli jakie jeszcze oferuje PHP. Podaj format danych, jak je obecnie wprowadzasz, a postramy się znaleść najoptymalniejsze rozwiązanie winksmiley.jpg
pijanyadmin
zabardzo nie rozumiem co ma do tego wprowadzanie danych winksmiley.jpg są wprowadzone i wyświetlane prawidłowo, chodzi tylko o zmiane stylu przy co 2 divie aby były kolorowane na zmiene...

  1. <?php
  2. $i++;
  3. $classw = ($i%2==1) ? "gjw" : "gjw2";
  4. switch($classw)
  5. {
  6. case "": { echo('<div class="'.$classw.'">tel: '.$tel.'</div>');break; }
  7. case "": { echo('<div class="'.$classw.'">dom: '.$dom.'</div>');break; }
  8.  
  9. default: { echo('');break; }
  10. }
  11. ?>


taki motyw też niezbyt działa...
Crozin
Chodzi mi o to, abyś podał dane jakie chcesz wyświetlić i jak to robisz - z reguły robi się to wewnątrz pętli, albo "statycznie" (przez ręczne wklepanie kodu)
pijanyadmin
  1. <?php
  2. $query = mysql_query("SELECT * FROM userdata WHERE id = '$userdata'");
  3. $dane = mysql_fetch_array($query);
  4. $tel = $dane[tel];
  5. $dom = $dane[dom]
  6. ?>
nospor
no i gdzie tu petla w ktorej chcesz na przemian cos robic?
pijanyadmin
w postach wyżej? poza tym trzeba to zrobić w petli?
mike
Cytat(pijanyadmin @ 9.04.2008, 20:26:17 ) *
w postach wyżej? poza tym trzeba to zrobić w petli?
Przykłady pętli to for(), foreach(), while(), ...
Gdzie masz coś takiego w postach wyżej?
marcio
  1. <?php
  2. $query = mysql_query("SELECT * FROM userdata WHERE id = '$userdata'");
  3. $i = 1;
  4. while($dane = mysql_fetch_array($query)) {
  5.  
  6. $tel = $dane['tel'];
  7. $dom = $dane['dom'];
  8.  
  9. if($kolor = $i % 2 == 0) ? "Pierwszy kolor" : "Drugi kolor";
  10.  
  11. echo('<b style="color:'.$kolor.'">'.$tel.'---'.$dom.'</b>'); // tu znacznik z style
  12. $i++;
  13. }
  14. ?>

Cos takigo
pijanyadmin
heh nie zrozumieliście, po co mam pobierać dane jeszcze raz z bazy skoro już je poprałem? Napisałem wyraźnie iż plik w którym mają zmieniać się kolory jest includowany... i dane są odczytywane, chodzi tylko o zmiane tych kolorów...
marcio
Do doloz zmiane do tego pliku albo zrob zmienne globalne
Crozin
No to nie musisz wykonywać ponownie zapytania, ale kolejna pętla jest konieczna:
  1. <?php
  2. $query = mysql_query("SELECT * FROM userdata WHERE id = '$userdata'");
  3.  
  4. $i = 1;
  5. $qwerty = array();
  6.  
  7. while($dane = mysql_fetch_array($query)) {
  8. $qwerty[] = $dane;
  9. $tel = $dane['tel'];
  10. $dom = $dane['dom'];
  11.  
  12. $kolor = ($i % 2 == 0) ? "Pierwszy kolor" : "Drugi kolor";
  13.  
  14. echo('<b style="color:'.$kolor.'">'.$tel.'---'.$dom.'</b>');
  15. $i++;
  16. }
  17.  
  18. //potem robisz cokolwiek chcesz
  19. $i = 1;
  20.  
  21. foreach($qwerty as $dane){
  22. $kolor = ($i % 2 == 0) ? "Trzeci kolor" : "Czwarty kolor";
  23.  
  24. echo('<b style="color:'.$kolor.'">'.$dane['tel'].'---'.$dane['dom'].'</b>');
  25. }
  26.  
  27. ?>
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.