Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Kolejność bloków menu.
Peterek
post 4.07.2010, 20:19:55
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 22.11.2007

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


Witam!
Mam tabelę z blokami menu w mojej bazie danych. Istnieje tam komórka "kolejnosc", dzięki której mógłbym sobie ustawić kolejność tych bloków. Niestety nie wiem jak zrobić, aby w panelu administratora uzyskać taki efekt,

blok1 | na dół
blok2 | na dół | do góry
blok3 | na dól | do góry
blok4 | do góry

że kiedy kliknę "na dół" bądź "do góry" w bazie danych zmieni się zawartość komórki "kolejnosc" danego rekordu. Niestety nie da się nadać każdemu blokowi numerka 1, 2, 3, 4, bo będą się one powielać. Czy istnieje jakiś inny sposób, aby uzyskać w/w efekt?
Z góry dzięki za pomoc.
Pozdrawiam
Go to the top of the page
+Quote Post
kociupk
post 4.07.2010, 21:51:08
Post #2





Grupa: Zarejestrowani
Postów: 97
Pomógł: 1
Dołączył: 29.03.2006

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


ja to robie tak
  1. function position_category_up($id_category, $position, $position_site, $isset) {
  2. if($isset == 'position_up') {
  3. $select_p_c = "SELECT * FROM site_category WHERE id_position < '".$position."' AND position = '".$position_site."' ORDER BY id_position DESC LIMIT 1";
  4. $query_p_c = mysql_query($select_p_c) or die(mysql_error());
  5. $array_p_c = mysql_fetch_array($query_p_c);
  6.  
  7. $new_position = $array_p_c['id_position'];
  8. $old_position = $position;
  9.  
  10. $edit_new_position_update = "UPDATE site_category SET id_position = '".$new_position."' WHERE id_position = '".$old_position."' AND position = '".$position_site."'";
  11. $edit_new_position_query = mysql_query($edit_new_position_update) or die(mysql_error());
  12.  
  13. $edit_old_position_update = "UPDATE site_category SET id_position = '".$old_position."' WHERE id_position = '".$new_position."' AND id_category = '".$array_p_c['id_category']."' AND position = '".$position_site."'";
  14. $edit_old_position_query = mysql_query($edit_old_position_update) or die(mysql_error());
  15.  
  16. if(!$edit_new_position_query && !$edit_old_position_query) {
  17. echo '<tr><td id="text_formularz_potwierdzenie">Nie można zmienić pozycji!</td></tr>';
  18. }
  19. }
  20. }
  21.  
  22. function position_category_down($id_category, $position, $position_site, $isset) {
  23. if($isset == 'position_down') {
  24. $select_p_c = "SELECT * FROM site_category WHERE id_position > '".$position."' AND position = '".$position_site."' ORDER BY id_position ASC LIMIT 1";
  25. $query_p_c = mysql_query($select_p_c) or die(mysql_error());
  26. $array_p_c = mysql_fetch_array($query_p_c);
  27.  
  28. $new_position = $array_p_c['id_position'];
  29. $old_position = $position;
  30.  
  31. $edit_new_update = "UPDATE site_category SET id_position = '".$new_position."' WHERE id_position = '".$old_position."' AND position = '".$position_site."'";
  32. $edit_new_query = mysql_query($edit_new_update) or die(mysql_error());
  33.  
  34. $edit_old_update = "UPDATE site_category SET id_position = '".$old_position."' WHERE id_position = '".$new_position."' AND id_category = '".$array_p_c['id_category']."' AND position = '".$position_site."'";
  35. $edit_old_query = mysql_query($edit_old_update) or die(mysql_error());
  36.  
  37. if(!$edit_new_query && !$edit_old_query) {
  38. echo '<tr><td id="text_formularz_potwierdzenie">Nie można zmienić pozycji!</td></tr>';
  39. }
  40. }
  41. }
Go to the top of the page
+Quote Post
Barcelona
post 4.07.2010, 21:59:59
Post #3





Grupa: Zarejestrowani
Postów: 322
Pomógł: 15
Dołączył: 29.01.2010

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


Można jeszcze ręcznie wpisywać kolejność bloków w menu, np:

blok1 | pozycja =[1]
blok2 | pozycja =[2]
blok3 | pozycja =[3]
blok4 | pozycja =[4]
Go to the top of the page
+Quote Post
Peterek
post 5.07.2010, 09:41:54
Post #4





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 22.11.2007

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


Dzięki za pomoc!
@kociupk:
przeanalizuję ten kod i myślę, że coś skleję, dzięki winksmiley.jpg
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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 03:42