Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Obraz jako rekord tabeli + sortowanie wyników $_POST(?).
Forum PHP.pl > Forum > Przedszkole
heaton124
Cześć, witam. To znów ja, z kolejnymi banalnymi pytaniami. Podzielę ten wątek na dwie części.

1. Obraz jako rekord tabeli.
Szukałem odpowiedzi tutaj na forum i jedyne co znalazłem, to to, że ogólnie wyciągając obraz z bazy MySQL powinienem nadać nagłówek. Po nadaniu takiego nagłówka jednak działa on na całą chyba stronę, bo cała strona jest biała z małym kwadracikiem i znakiem zapytania w lewym górnym rogu. Jeśli zaś nie nadaję header'a, to na początku miałem jakiś dziwny ciąg znaków, a teraz to:

Cytat
Notice: Undefined index: flag in ścieżka\dokument.php on line 42.


Kod wygląda tak, i nie wiem co z nim zrobić:

  1. <?php
  2. $mysqlConnection = mysql_connect("localhost", "root", "haslo") or die(mysql_error);
  3.  
  4. $zapytanie = 'SELECT name, type, prize, awarded, signup, fee FROM list';
  5. $wynik = mysql_query($zapytanie) or die(mysql_error());
  6.  
  7. ?>
  8.  
  9. <div align="center">
  10. <div id="listmenu">
  11. <table width="1180">
  12. <tr>
  13. <th width="50" scope="col">*</th>
  14. <th width="500" scope="col">name</th>
  15. <th width="110" scope="col">type</th>
  16. <th width="110" scope="col">prize</th>
  17. <th width="140" scope="col">awarded places</th>
  18. <th width="124" scope="col">sign up until</th>
  19. <th width="100" scope="col">entry fee</th>
  20. </tr>
  21.  
  22. <?php
  23. while ($rekord = mysql_fetch_assoc($wynik)) {
  24. echo "<tr>";
  25. echo "<td>" . $rekord['flag'] . "</td><td>" . $rekord['name'] . "</td><td>" . $rekord['type'] . "</td><td>" . $rekord['prize'] . "</td><td>" . $rekord['awarded'] . "</td><td>" . $rekord['signup'] . "</td><td>" . $rekord['fee'] . "</td>";
  26. echo "</tr>\n";
  27. }
  28.  
  29. ?>
  30.  
  31. </table>
  32. </div>
  33. </div>

Pod rekordem "$rekord['flag']" chciałem, aby znajdował się obrazek.

2. Sortowanie wyników.
Chciałbym też dodać opcję, aby 'nagłówki' w tabeli mogły być 'aktywne', czyli po kliknięciu na nie, bez zmieniania adresu strony. Próbowałem pisać jakieś zmienne, ale bez żadnych efektów.

Z góry dzięki za pomoc.
jacobson
1. Najlepiej jest trzymac obrazek na dysku, a w bazie tylko sciezke do niego i wtedy podajesz zwykly znacznik img src z url pobranym z bazy.
2. Co znaczy aktywne ? jak chcesz wykonywac operacje bez przeladowania strony to $.ajax jquery
heaton124
jacobson -
1. Kocham Cię. Oczywiście najbanalniejszy pomysł i wyszło.
2. Chcę, aby to wyglądało tak jak na każdej stronie, na której pojawia się jakaś lista. Dobry przykład jest tu: http://otservlist.org/ . Można klikać na każdy z nagłówków i w sumie jak to przemyślałem, to może być z przeładowaniem strony i ze zmieniającym się adresem. Tak czy inaczej nie wiem jak się za to zabrać. Oczywiście 'aktywne' mają być opcje z menu które widać w kodzie w pierwszym poście.

EDIT: Dobra, domyślam się że muszę po prostu zrobić kilka stron na których wszystko będzie inaczej posortowane a potem zrobić do nich odnośniki. Dzięki.
jacobson
to jest bardzo lopatologiczne rozwiazanie. Zdecydowanie lepszym jest przesylanie ajaxem np po nacisnieciu pola data informacji zmieniajacej sie z 0 na 1 czy ma byc rosnaco czy malejaco. Pobierasz rekordy z bazy zgodnie z danym orderem i czyscisz te co masz teraz i wyswietlasz nowe. (wydaje sie trudne ale ogolnie to proste) jak cos to pisz na priw jak bedizesz mial problemy.
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.