Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][MySQL][PHP]Kolorowe pola w tabeli
Forum PHP.pl > Forum > Przedszkole
grom2001
Mam zapytanie w MySql które zwraca tabelę. Część pól tabeli zawiera wartości, a część jest pusta.

Chciałbym aby pola zawierające wartości były "z automatu" zaznaczane kolorem czerwonym, a puste kolorem zielonym.
Nie bardzo wiem jak się do tematu zabrać i liczę na Wasza pomoc.
Mam nadzieje że problem przedstawiłem dość jasno.
paw-e-l
czy masz już skrypt generujący tabele z danymi?
grom2001
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
  5. <link rel="stylesheet" href="../style.css" type="text/css" />
  6. <title></title>
  7. </head>
  8. <body>
  9. <?php
  10.  
  11. include "../config.inc.php"; /* odczyt kofiguracji bazy danych */
  12.  
  13. ?>
  14. <body>
  15. <table width="100%" cellspacing="0" cellpadding="1" border="1">
  16. <tr bgcolor="#EFEFFF">
  17. <td width="25"><strong><p align=center>Lp.</p></strong></td>
  18. <td width="100"><strong><p align=center>DATA</p></strong></td>
  19. <td width="20"><strong><p align=center>1</p></strong></td>
  20. <td width="20"><strong><p align=center>2</p></strong></td>
  21. <td width="20"><strong><p align=center>3</p></strong></td>
  22. <td width="20"><strong><p align=center>4</p></strong></td>
  23. <td width="20"><strong><p align=center>5</p></strong></td>
  24. <td width="20"><strong><p align=center>6</p></strong></td>
  25. <td width="20"><strong><p align=center>7</p></strong></td>
  26. <td width="20"><strong><p align=center>8</p></strong></td>
  27. <td width="20"><strong><p align=center>9</p></strong></td>
  28. <td width="20"><strong><p align=center>10</p></strong></td>
  29. <td width="20"><strong><p align=center>11</p></strong></td>
  30. <td width="20"><strong><p align=center>12</p></strong></td>
  31. <td width="20"><strong><p align=center>13</p></strong></td>
  32. <td width="20"><strong><p align=center>14</p></strong></td>
  33. <td width="20"><strong><p align=center>15</p></strong></td>
  34. <td width="20"><strong><p align=center>16</p></strong></td>
  35. <td width="20"><strong><p align=center>17</p></strong></td>
  36. <td width="20"><strong><p align=center>18</p></strong></td>
  37. <td width="20"><strong><p align=center>19</p></strong></td>
  38. <td width="20"><strong><p align=center>20</p></strong></td>
  39. <td width="20"><strong><p align=center>21</p></strong></td>
  40. <td width="20"><strong><p align=center>22</p></strong></td>
  41. <td width="20"><strong><p align=center>23</p></strong></td>
  42. <td width="20"><strong><p align=center>24</p></strong></td>
  43. <td width="20"><strong><p align=center>25</p></strong></td>
  44. <td width="150"><strong><p align=center></p></strong></td>
  45. <td width="150"><strong><p align=center></p></strong></td>
  46. </tr>
  47. <?php
  48. include "../config.inc.php";
  49. $conn = mysql_connect($host, $user, $password);
  50. $wp = mysql_select_db($dbName, $conn);
  51.  
  52. $metoda=$_POST['identyfikacja'];
  53. $fraza=$_POST['wyrazenie'];
  54.  
  55. if ($_POST['dzis'] == 'dzis')
  56. {
  57. $data = date('Y-m-d');
  58. }
  59. else if ($_POST['dzis'] == 'kalendarz')
  60. {
  61. $data=$_POST['data'];
  62. }
  63. else
  64. {
  65. //data pusta
  66. $data='';
  67. }
  68.  
  69.  
  70.  
  71.  
  72.  
  73. $query = "SELECT *, pacjenci.rezerwacja
  74. FROM zapis
  75. left join pacjenci on idzapis=pacjentid
  76. WHERE data LIKE '%".$data."'";
  77.  
  78. $result = mysql_query($query)
  79. or die ("Zapytanie nieudane!");
  80. $lp = 1;
  81.  
  82. while ($line = mysql_fetch_array($result, MYSQL_ASSOC))
  83. {
  84.  
  85. echo "<tr>
  86. <td align=center>" . $lp . "&nbsp;</td>".
  87. "<td align=center>" . $line["data"] . "</td>".
  88. "<td align=center>" . $line["kod_1"] . "</td>".
  89. "<td align=center>" . $line["kod_2"] . "</td>".
  90. "<td align=center>" . $line["kod_3"] . "</td>".
  91. "<td align=center>" . $line["kod_4"] . "</td>".
  92. "<td align=center>" . $line["kod_5"] . "</td>".
  93. "<td align=center>" . $line["kod_6"] . "</td>".
  94. "<td align=center>" . $line["kod_7"] . "</td>".
  95. "<td align=center>" . $line["kod_8"] . "</td>".
  96. "<td align=center>" . $line["kod_9"] . "</td>".
  97. "<td align=center>" . $line["kod_10"] . "</td>".
  98. "<td align=center>" . $line["kod_11"] . "</td>".
  99. "<td align=center>" . $line["kod_12"] . "</td>".
  100. "<td align=center>" . $line["kod_13"] . "</td>".
  101. "<td align=center>" . $line["kod_14"] . "</td>".
  102. "<td align=center>" . $line["kod_15"] . "</td>".
  103. "<td align=center>" . $line["kod_16"] . "</td>".
  104. "<td align=center>" . $line["kod_17"] . "</td>".
  105. "<td align=center>" . $line["kod_18"] . "</td>".
  106. "<td align=center>" . $line["kod_19"] . "</td>".
  107. "<td align=center>" . $line["kod_20"] . "</td>".
  108. "<td align=center>" . $line["kod_21"] . "</td>".
  109. "<td align=center>" . $line["kod_22"] . "</td>".
  110. "<td align=center>" . $line["kod_23"] . "</td>".
  111. "<td align=center>" . $line["kod_24"] . "</td>".
  112. "<td align=center>" . $line["kod_25"] . "</td>".
  113. "<td align=center><a href=edit_zapis.php?id=" . $line["idzapis"] . ">" . "<input type=button
  114. value=Edytuj TITLE=Edytuj onClick=location.href='edit_zapis.php?id=" . $line["id"] . "'>"."</a></td>".
  115. "<td align=center><a href=edit_pacjent.php?id=" . $line["idzapis"] . ">" . "<input type=button
  116. value=Umów TITLE=Umów onClick=location.href='edit_pacjent.php?id=" . $line["id"] . "'>"."</a></td>".
  117.  
  118.  
  119.  
  120.  
  121.  
  122. "</tr>";
  123.  
  124.  
  125. //zwiększanie o jeden L.p.
  126. $lp++;
  127. }
  128.  
  129.  
  130. ?>
  131. </table>
  132. <br></td>
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139. </body>
  140. </html>
nospor
podpowiedź
  1. //...
  2. echo '<td style="backgorund-color:'.(empty($wartosc) ? 'red' : 'green').';">'.$wartosc.'</td>';
  3. //...
paw-e-l
pierwsze co mi się rzuciło w oczy to że 2 razy includujesz ten sam plik include "../config.inc.php"; ale to nie ma związku z tematem.
Co do kolorowania/zaznaczania komórek to możesz zrobić np tak:
  1. "<td align=center".(empty($linie['data']) ? 'class="zielone"' : 'class="czerwone"').">" . $line["data"] . "</td>".


analogicznie zrób tak dla każdej komórki która ma być zaznaczana. tylko nie zapomnij w stylach stworzyć klasy zielone i czerowne winksmiley.jpg
grom2001
Zrobiłem to tak:
  1. $kod_4=$_POST['kod_4'];
  2. $kod_5=$_POST['kod_5'];
  3.  
  4. if($kod_4 == 0)
  5. {
  6. $color4="green";
  7. }
  8. else if($kod_4 != 0)
  9. {
  10. $color4="red";
  11. }
  12.  
  13.  
  14.  
  15. if($kod_5 == 0)
  16. {
  17. $color5="green";
  18. }
  19. else if($kod_5 != 0)
  20. {
  21. $color5="red";
  22. }


I pojawia się problem.
Niezależnie czy wartość = 0 czy jest większ zawsze pojawia się pole zielone sad.gif
CyberDuck_
A co w tym polu trzymasz ? Jesli to jest pole textowe to mozesz
jedynie szukac pustego lancucha, a nie wartosci zero.
czyli zamiast zero podaj pusty ciag '' .
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.