Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Porządkowanie wyświetlonych elementów tablic
Mostrom
post
Post #1





Grupa: Zarejestrowani
Postów: 83
Pomógł: 3
Dołączył: 17.04.2007

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


Witam! Mam oto taki kodzik, który odlicza po kolei podane liczby.
  1. <form method="post">
  2. odliczaj od:
  3. <input type="text" name="a">
  4. do:
  5. <input type="text" name="b">
  6. <input type="submit" value="Odliczaj!">
  7. </form>
  8. <?php
  9. @$a=$_POST["a"];
  10. @$b=$_POST["b"];
  11. $roznica=$b-$a;
  12. @$tbli[$roznica];
  13. if(!empty($a) AND !empty($b)){
  14. for($index=$a;$index<=$b;$index++){
  15. $elemtbli=$index-$a;
  16. $tbli[$elemtbli]=$index;
  17.  
  18. print_r($index);
  19.  
  20. if($index<$b){
  21. echo ", "; }
  22.  
  23. else{
  24. echo " "; }
  25. }
  26. }
  27. else{ echo "aaaa wpisz zakres!!!"; }
  28. ?>


Chciałbym jakoś uporządkować tablicę, którą mi wyświetla print_r(), mianowicie chciałbym, aby po kilku kolejnych elementach tablicy, dodawał mi odstęp, bo gdy zacznie odliczać od 1 do 400, to sie bałagan robi na stronie. Jak to zrobić?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Mostrom
post
Post #2





Grupa: Zarejestrowani
Postów: 83
Pomógł: 3
Dołączył: 17.04.2007

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


Nie musiałbym przeładowywać strony, po co. Udało mi się uzyskać efekt o jak mi chodzi w sposób tzw. "manualny" (IMG:style_emoticons/default/biggrin.gif) mianowicie:
  1. for($index=$a;$index<=$b;$index++){
  2. $elemtbli=$index-$a;
  3. $tbli[$elemtbli]=$index;
  4. if($index==20 OR $index==40 OR $index==60 OR $index==80) {echo "</br>";}
  5. print_r($index);
  6. if($index<$b){
  7. echo ", ";
  8. }
  9.  
  10. else{
  11. echo " "; }
  12.  
  13.  
  14. }

ale to jest zrobione nie zgodnie ze sztuką, poza tym jest ograniczona liczba odliczania. Na 100% da się zrobić to czystym php bez żadnego odświeżania. Jestem przekonany, że da się zrobić warunek że co któreś wykonanie pętli for ma być dadny odstęp. Wpadłem na coś takiego teraz, ale nie wiem czy będzie działać. Usunąć printowanie index z pętli for, za to wyświetlić całą tablicę po uzupełnieniu tej tablicy:
  1. for($x=0, $lczb=count($tbli); $x<$lczb; $x++){
  2. echo $tbli[$x];
  3. while ($lczb=$lczb/20){ // warunek źle zrobiłem, powinno być "jeśli lczb da się podzielić przez 20 i wynik ten jest powyżej 1", ale musze pomyśleć jak to sformuować
  4. echo "</br>";
  5. continue; }


I co myślicie o tym? Gdyby ktoś zgodziłby się ulepszyć w/w kod byłbym wdzięczny (IMG:style_emoticons/default/smile.gif)
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 - 14:08