Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [CSS][PHP] Kolor elementu uzależniony od przekazanej wartości w zmiennej
brzanek
post 30.11.2023, 09:52:04
Post #1





Grupa: Zarejestrowani
Postów: 427
Pomógł: 0
Dołączył: 8.11.2012

Ostrzeżenie: (0%)
-----


Witam proszę o pomoc w jaki sposób uzyskać odpowiedni kolor elementu uzależniony od wartości przekazanej w $_GET
Mam kod
  1. <?
  2. include('../../includes/header.php');
  3. include('dane.php');
  4.  
  5. $model = $_GET['model'];
  6. $rodzaj = $_GET['rodzaj'];
  7.  
  8. include('array.php');
  9. ?>
  10. <link href="mapaecmwf.css" rel="stylesheet">
  11. <?php
  12. echo '<div class="container-fluid text-center marginesy">';
  13. include('menu.php');
  14. echo '</div>';
  15.  
  16. echo '<div class="container-fluid text-center marginesy">';
  17. echo '<br><h1 class="text-center"><b>'.$rodzajelementu[($rodzaj)].' ('.$model.')</b></h1><br><br>';
  18. echo "<div class='text-center'><img src='https://adres.pl/legenda_".$rodzajlegendy[($rodzaj)].".png' class='img-fluid' alt='Responsive image'><br><br></div>";
  19. echo '</div>';
  20.  
  21. echo '<div class="container-fluid text-center marginesy">
  22. <div class="row">
  23. ';
  24.  
  25. include('mapa.php');
  26.  
  27. echo '</div>';
  28. echo '</div>';
  29. include('../../includes/footer.php');
  30. ?>


Zawartość pliku mapa.php
  1. <?
  2. include('../dane.php');
  3. $temperature_2m=array(
  4. '-7' => '#7fc4ff',
  5. '-6' => '#91ccff',
  6. '-5' => '#9ad0ff',
  7. '-4' => '#a3d4ff',
  8. '-3' => '#b5dcff',
  9. '-2' => '#c7e4ff',
  10. '-1' => '#d9ecff',
  11. '-0' => '#d9ecff',
  12. '0' => '#b1f1d6',
  13. '1' => '#95dfbc',
  14. '2' => '#87d3ab',
  15. '3' => '#62af88',
  16. '4' => '#4a9775',
  17. '5' => '#07a127',
  18. );
  19.  
  20. $godzinaa=date("G");
  21. $minutaa=date("i");
  22. $number = range($godzinaa, $godzinaa + 110);
  23. $numberbestt = range($godzinaa, $godzinaa + 100);
  24.  
  25. foreach ($numberbestt as $dwd) {
  26. //$kollor = ceil(''.$response['hourly'][$rodzajmodel][$dwd].'').'_'.$rodzaj;
  27. //echo $tempArray4[($kollor)];
  28. $rodzajarrey = $rodzaj;
  29. $rodzajmodel = $rodzaj.'_'.$model;
  30. //echo $rodzajmodel;
  31. echo '<div class="col-4 odstt pozycja">';
  32. echo "<div class=''><img src='obrazek_prognoza.jpg' class='img-fluid' alt='Responsive image'>";
  33.  
  34. //$dzien = date('N'' => '',' strtotime($cond['time']));
  35. //$dni_tygodnia = array('Poniedziałek'' => '',' 'Wtorek'' => '',' 'Środa'' => '',' 'Czwartek'' => '',' 'Piątek'' => '',' 'Sobota'' => '',''Niedziela');
  36. //<i class="wi wi-night-sleet"></i>
  37. echo '<div class="czas"><b>'.$rodzajelementu[($rodzaj)].' ('.$model.')</b><br>'.$response['hourly']['time'][$dwd].'</div>';
  38. echo '<div class="choszczno" style="background-color: '.$tempArray4[ceil(''.$response['hourly'][$rodzajmodel][$dwd].'')].'">'.round($response['hourly'][$rodzajmodel][$dwd],1).'</div>';
  39. echo '<div class="szczecin" style="background-color: '.$tempArray4[ceil(''.$responseszczecin['hourly'][$rodzajmodel][$dwd].'')].'">'.round($responseszczecin['hourly'][$rodzajmodel][$dwd],1).'</div>';
  40. echo '<div class="darlowo" style="background-color: '.$tempArray4[ceil(''.$responsedarlowo['hourly'][$rodzajmodel][$dwd].'')].'">'.round($responsedarlowo['hourly'][$rodzajmodel][$dwd],1).'</div>';
  41. echo "</div>";
  42. echo "</div>";
  43. }
  44. ?>


wartość $tempArray4 pobierana jest z pliku 'array.php i wszystko ładnie działa ale w zależność od wartości przekazywanej w adresie $rodzaj = $_GET['rodzaj']; chciałbym aby zmieniał się odpowiedni kolor elementu style="background-color: '.$tempArray4[ceil(''.$response['hourly'][$rodzajmodel][$dwd].''

Podaję przykład jeśli w adresie mam /index.php?model=best_match&rodzaj=precipitation
Jako rodzaj precipitation
To w tej linii
  1. echo '<div class="choszczno" style="background-color: '.$tempArray4[ceil(''.$response['hourly'][$rodzajmodel][$dwd].'')].'">'.round($response['hourly'][$rodzajmodel][$dwd],1).'</div>';

Gdzie jest background-color: '.$tempArray4 dał bym background-color: '.$kolor[($rodzaj)]
W pliku array.php odpowiednie kolory
  1. $precipitation=array(
  2. '-7' => '#7fc4ff',
  3. '-6' => '#91ccff',
  4. '-5' => '#9ad0ff',
  5. '-4' => '#a3d4ff',
  6. '-3' => '#b5dcff',
  7. '5' => '#07a127',
  8. );

Coś takiego
Go to the top of the page
+Quote Post
trueblue
post 30.11.2023, 12:18:52
Post #2





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Cytat(brzanek @ 30.11.2023, 09:52:04 ) *
wartość $tempArray4 pobierana jest z pliku 'array.php i wszystko ładnie działa [...]

Co właściwie pobierasz z $tempArray4 i ładnie działa, skoro nie działa, bo chcesz tam wstawić kolor?
Gdzie jest $tempArray4? W pliku array.php jest tablica $precipitation.
Jest też tablica z kolorami o nazwie $temperature_2m.

Skoro chcesz pobrać kolor z tablicy, to musisz pobrać ją na podstawie indeksu, czyli musisz dostarczyć wartość od -7 do 5 jako indeks.


--------------------
Go to the top of the page
+Quote Post
brzanek
post 30.11.2023, 12:31:55
Post #3





Grupa: Zarejestrowani
Postów: 427
Pomógł: 0
Dołączył: 8.11.2012

Ostrzeżenie: (0%)
-----


Przepraszam za zamieszanie w pliku array.php mam
  1. $tempArray4=array(
  2. '-7' => '#7fc4ff',
  3. '-6' => '#91ccff',
  4. '-5' => '#9ad0ff',
  5. '-4' => '#a3d4ff',
  6. '-3' => '#b5dcff',
  7. '5' => '#07a127',
  8. ...
  9. );

I wszystko działa ale jak chcę zmienić parametr $rodzajmodel z adresu to zawsze pobiera kolor właśnie z $tempArray4
Chciałbym aby kolor był pobierany z dobrej palety kolorów a nie tylko z $tempArray4
W pliku array.php dodam sobie kilka palet z odpowiednimi kolorami ale jak zrobić aby po adresie wybierana była odpowiednia paleta.

Ten post edytował brzanek 30.11.2023, 12:32:41
Go to the top of the page
+Quote Post
nospor
post 30.11.2023, 15:42:24
Post #4





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




juz ci kiedys, w zasadznie niedawno, mowili tutaj o tablicy wielowymiarowej. Tam sobie trzymaj rodzaje i temperatury i z banki

  1.  
  2. $tablica = [
  3. 'precipitation' => [
  4. '-7' => '#7fc4ff',
  5. '-6' => '#91ccff',
  6. '-5' => '#9ad0ff',
  7. '-4' => '#a3d4ff',
  8. '-3' => '#b5dcff',
  9. '5' => '#07a127',
  10. .....
  11. ],
  12. 'inny rodzaj' => [
  13. '-7' => '#7fc4ff',
  14. '-6' => '#91ccff',
  15. '-5' => '#9ad0ff',
  16. '-4' => '#a3d4ff',
  17. '-3' => '#b5dcff',
  18. '5' => '#07a127',
  19. .....
  20. ],
  21. // itd itd
  22.  
  23.  
  24. ]
  25.  

a potem tylko

  1. $tablica[$rodzaj][$temperatura]


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 27.04.2024 - 10:07