Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Sortowanie malejące i rosnące w jedynym skrypcie, Sortowanie
krzysiek11021
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 3.10.2016

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


Witam,

Mam problem, otóż próbuje stworzyć skrypt

W formularzu wypisuje dowolne 3 liczby. Dajmy na to 1, 2 ,3. I klikam czy chcę je uporządkować rosnąco czy malejąco. Klikam rosnąco i ten formularz wysyła się do mojego pliku php, który oddaję wynik rosnący.

Problem w tym, że mam tylko rosnąco, a nie wiem jak zrobić żeby być też malejąco. Nie wiem, czy dobrze to wytłumaczyłem o co mi chodzi haha.gif Podaje skrypty i screena.

1. Plik Formularz.html
  1. <!doctype html>
  2. <head>
  3. <title>Wysyłanie danych na serwer WWW poprzez formularz</title>
  4. <meta charset="UTF-8" />
  5. </head>
  6. <body>
  7. <form action="wyniki.php" method="get">
  8. <input type="number" name="pole_1" placeholder="Wprowadź liczbę" />
  9. <input type="number" name="pole_2" placeholder="Wprowadź liczbę" />
  10. <input type="number" name="pole_3" placeholder="Wprowadź liczbę" />
  11. <br> Czy sortować malejąco? <br>
  12. <label for="akcja">nie</label>
  13. <input type="radio" name="akcja" value="1" checked="checked">
  14. <label for="akcja">tak</label>
  15. <input type="radio" name="akcja" value="0">
  16. <input type="submit" name="wyslij" value="Wyślij" />
  17. </form>
  18. </body>
  19. </html>


Plik 2 - wyniki.php
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <title>Testowanie skryptów PHP</title>
  5. <meta charset="UTF-8" />
  6. </head>
  7. <body>
  8. <?php
  9. $multiarray = Array(
  10. Array($_GET["pole_1"], "name" => $_GET["pole_1"]),
  11. Array($_GET["pole_2"], "name" => $_GET["pole_2"]),
  12. Array($_GET["pole_3"], "name" => $_GET["pole_3"]));
  13. $sortuj = $_GET["akcja"];
  14. if ($sortuj) {
  15. $tmp = Array();
  16. foreach($multiarray as &$ma)
  17. $tmp[] = &$ma["name"];
  18. array_multisort($tmp, $multiarray);
  19. foreach($multiarray as &$ma)
  20. echo $ma["name"]."<br/>";
  21. }
  22.  
  23. ?>
  24. </body>
  25. </html>



Po prostu chciałbym mieć możliwość wyboru w tym formularzu czy chce malejąco sortować, czy rosnąco. Głowię się i głowię i nic mi nie przychodzi na myśl.

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
borabora
post
Post #2





Grupa: Zarejestrowani
Postów: 116
Pomógł: 33
Dołączył: 8.09.2014

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


  1. $array = Array(
  2. $_GET["pole_1"],
  3. $_GET["pole_2"],
  4. $_GET["pole_3"]
  5. );
  6. $sortuj = $_GET["akcja"];
  7. if ($sortuj)
  8. asort($array);
  9. else rsort($array);
  10.  
  11. foreach($array as $value)
  12. echo $value."<br/>";

jak ktoś Ci wlezie na wynik.php to wywali mu kilka błędów notice. byćmoże to tylko w celu ćwiczenia, ale jeżeli to część większej całości to wypadałoby to poprawić
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 Aktualny czas: 22.08.2025 - 09:43