Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Formatowanie warunkowe danych z pliku txt
MarcinKonewski
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 1
Dołączył: 26.02.2016

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


Witam Serdecznie,

Gryzę się już z tym kilka dni. Szukam, kombinuję na polskich i zagranicznych stronach, nic... Logistycznie niby wszystko łatwe i da się zrobić, jedna kiedy przychodzi do zmiany kodu wszystko to jak krew w piach. Przechodzę do rzeczy. Mam skrypt formularza, który zapisuje dane do pliku txt. W następnym skrypcie odczytuję to co się znajduje w tym pliku txt za pomocą tabeli. Jednym z pól formularza jest imię jakiejś osoby. Chciałbym aby jeśli ta osoba pojawia się po raz czwarty w tabeli (tzn. jeśli jest to już czwarty wiersz z jej udziałem) to niech cały wiersza ma czerwone tło.

Skrypt jest podzielony na różne pliki, tzn. jeśli w formularzu wybierasz opcję plik1 to zapisuje do plik1.txt. Jeżeli wybierasz plik2 to zapisuje do plik2.txt. Zresztą sami zobaczcie plik wyswietlający. Bardzo proszę o pomoc...

  1. <table border="1">
  2.  
  3. <?php
  4. /*********************************************
  5. * plik podglad.php
  6. *********************************************/
  7.  
  8. // wczytanie zawartości pliku do tablicy
  9.  
  10. if ($_GET["id"] == "4a"){
  11. $file = file("class/4a.txt");
  12. } elseif($_GET["id"] == "4b") {
  13. $file = file("class/4b.txt");
  14. } elseif($_GET["id"] == "4c") {
  15. $file = file("class/4c.txt");
  16. } elseif($_GET["id"] == "4d") {
  17. $file = file("class/4d.txt");
  18. } elseif($_GET["id"] == "4e") {
  19. $file = file("class/4e.txt");
  20. } elseif($_GET["id"] == "4f") {
  21. $file = file("class/4f.txt");
  22. } elseif($_GET["id"] == "5a") {
  23. $file = file("class/5a.txt");
  24. } elseif($_GET["id"] == "5b") {
  25. $file = file("class/5b.txt");
  26. } elseif($_GET["id"] == "5c") {
  27. $file = file("class/5c.txt");
  28. } elseif($_GET["id"] == "5d") {
  29. $file = file("class/5d.txt");
  30. } elseif($_GET["id"] == "5e") {
  31. $file = file("class/5e.txt");
  32. } elseif($_GET["id"] == "5f") {
  33. $file = file("class/5f.txt");
  34. } elseif($_GET["id"] == "6a") {
  35. $file = file("class/6a.txt");
  36. } elseif($_GET["id"] == "6b") {
  37. $file = file("class/6b.txt");
  38. } elseif($_GET["id"] == "6c") {
  39. $file = file("class/6c.txt");
  40. } elseif($_GET["id"] == "6d") {
  41. $file = file("class/6d.txt");
  42. } elseif($_GET["id"] == "6e") {
  43. $file = file("class/6e.txt");
  44. } elseif($_GET["id"] == "6f") {
  45. $file = file("class/6f.txt");
  46. } elseif($_GET["id"] == "7a") {
  47. $file = file("class/7a.txt");
  48. } elseif($_GET["id"] == "7b") {
  49. $file = file("class/7b.txt");
  50. } elseif($_GET["id"] == "7c") {
  51. $file = file("class/7c.txt");
  52. } elseif($_GET["id"] == "7d") {
  53. $file = file("class/7d.txt");
  54. } elseif($_GET["id"] == "8a") {
  55. $file = file("class/8a.txt");
  56. } elseif($_GET["id"] == "8b") {
  57. $file = file("class/8b.txt");
  58. } elseif($_GET["id"] == "9a") {
  59. $file = file("class/9a.txt");
  60. } elseif($_GET["id"] == "9b") {
  61. $file = file("class/9b.txt");
  62. }
  63.  
  64.  
  65. // przechodzimy przez tablicę za pomocą pętli foreach
  66. foreach($file as $value) {
  67. // rozbijamy poszczególne linie na części
  68. $exp = explode("`",$value);
  69. // wyświetlamy rozbity tekst
  70. echo "<tr><td>Student's name: <b>".$exp[0]." </b></td><td>Class: <b>".$exp[1]." </b></td><td>Teacher: <b>".$exp[2]." </b></td><td>Issue: <b>".$exp[3]." </b></td><td>Add Info: <b>".$exp[4]." </b></td><td>".$exp[5]." </td></tr>";
  71. }
  72.  
  73. ?>
  74.  
  75. </table>
  76. <?
  77. include ("footer.php");
  78. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
MarcinKonewski
post
Post #2





Grupa: Zarejestrowani
Postów: 10
Pomógł: 1
Dołączył: 26.02.2016

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


Dziękuję z całego serca.

A jeśli chciałbym aby na czerwno zaznaczało się każda 4,8,12... itd pozycja przy pojawieniu się imienia. A na żółto każda 3,6,9...itd?? Zrobiłem tak, ale zaznacza się tylko 3 , iwszystkie powyżej 4. Nie wiem jakim cudem skoro wyraźnie zaznaczyłem =3 i = 4.

  1. $imiona[$exp[0]]++;
  2. if($imiona[$exp[0]] == 3) {
  3. $kolor1 = " bgcolor=yellow";
  4. $kolor2 = " bgcolor=yellow";
  5. $kolor3 = " bgcolor=yellow";
  6. $kolor4 = " bgcolor=yellow";
  7. $kolor5 = " bgcolor=yellow";
  8. $kolor6 = " bgcolor=yellow";
  9. }
  10. $imiona2[$exp[0]]++;
  11. if($imiona2[$exp[0]] == 4) {
  12. $kolor1 = " bgcolor=red";
  13. $kolor2 = " bgcolor=red";
  14. $kolor3 = " bgcolor=red";
  15. $kolor4 = " bgcolor=red";
  16. $kolor5 = " bgcolor=red";
  17. $kolor6 = " bgcolor=red";
  18. }


Z czym jeszcze mam problem to odświerzanie strony. Za każdym razem muszę po setki razy odświerzać stronę, żeby uzyskać zmianę. Czy to wina skryptu? Jak to zmienić, aby zmiany na stronie pojawiały się natychmiast po oświerzeniu?
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 13.10.2025 - 11:32