Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pole wyboru option
Forum PHP.pl > Forum > PHP
wojcienty
Witam mam bazę danych o nazwie Klasa a w niej kolumny o nazwach Numer, Imię, Nazwisko. Chciałbym zrobić sortowanie że po wybraniu opcji w formularzu sortuje mi po numerze, przy następnym wyborze wybiorę sobie np. Imię i będzie mi sortować po imieniu. Wiem jak to zrobić na osobnych plikach ale nie mam pojęcia jakby to połączyć w jedną całość. Z góry dzięki za pomoc.

plik sortowanie.html

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//PL">
  2. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  3. <meta name="Keywords" content="sortowanie, ob, formularz">
  4. <meta http-equiv="Content-Language" content="pl">
  5. <meta name="Author" content="wojcienty">
  6. <meta http-equiv="Creation-Date" content="Fri, 01 Apr 2011 12:12:25 GMT">
  7. <meta name="Robots" content="all">
  8. <title>Sortowanie</title>
  9. </head>
  10.  
  11. <form action="sortowanie.php" method="post">
  12.  
  13. <b>Wybierz wg. czego mam posortowac dane z bazy: </b>
  14.  
  15. <select name="wybor">
  16.  
  17. <option>Numer</option>
  18. <option>Imie</option>
  19. <option>Nazwisko</option>
  20.  
  21.  
  22. <input type="submit" value="sortuj"/>
  23.  
  24. </form>
  25.  
  26.  
  27. </body>
  28. </html>


plik sortowanie.php

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//PL">
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5. <meta name="Keywords" content="sortowanie, ob, formularz">
  6. <meta http-equiv="Content-Language" content="pl">
  7. <meta name="Author" content="wojcienty">
  8. <meta http-equiv="Creation-Date" content="Fri, 01 Apr 2011 12:12:25 GMT">
  9. <meta name="Robots" content="all">
  10. <title>Sortowanie</title>
  11. </head>
  12. <body>
  13.  
  14. <?php
  15.  
  16. $polaczenie=mysql_connect(localhost,'root','');
  17.  
  18. mysql_select_db('Klasa',$polaczenie);
  19.  
  20. $sql='SELECT * FROM Klasa ORDER BY Numer ASC';
  21.  
  22. $wynik=mysql_query($sql);
  23. echo '<table cellpadding="2" border=1>';
  24. while($linia=mysql_fetch_array($wynik))
  25. {
  26. echo '<tr>' ;
  27. echo "<td>".$linia['Numer']."</td>" ;
  28. echo "<td>".$linia['Imie']. "</td>" ;
  29. echo "<td>".$linia['Nazwisko']. "</td>" ;
  30. echo '</tr>';
  31. }
  32.  
  33. mysql_close($polaczenie);
  34.  
  35.  
  36. ?>
  37.  
  38.  
  39. </body>
  40. </html>
kadlub
  1.  
  2.  
  3. $sql="SELECT * FROM Klasa ORDER BY ".$_POST['wybor']." ASC";
mat-bi
Pamiętaj tylko o zabezpieczeniu przed SQL Injection, bo to podstawa wink.gif
kadlub
Cytat(mat-bi @ 1.04.2011, 16:18:14 ) *
Pamiętaj tylko o zabezpieczeniu przed SQL Injection, bo to podstawa wink.gif



no jasne np

mysql_real_escape_string()
wojcienty
robiłem tak jak mi napisałeś tylko zamiast " stosowałem ' i nie działało mi, jak na razie zabezpieczenia nie są potrzebne bo jest to tylko zadanie na OB. Dzięki za pomoc obydwoje dostajecie po +.
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.