Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Podstrony układanie kolejności
devdev
post 27.11.2009, 17:22:01
Post #1





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 8.06.2009

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


Cześć.

mam w bazie tabele Pages w niej mam

id|title|page_name|text|kol



wiem żeby wyświetlało mi według kolejności to w zapytaniu order by kol

ale pytanie brzmi jak updetowac kolejność


zczytuje z bazy

Kod
[php]$q = $db->query('Select * from  pages order by kol');
While($wynik = mysql_fetch_assoc($q)){


}[/php]


i tu się kończy moja wiedza;/

Proszę o pomoc


Go to the top of the page
+Quote Post
b4x
post 27.11.2009, 17:25:17
Post #2





Grupa: Zarejestrowani
Postów: 658
Pomógł: 95
Dołączył: 20.12.2005
Skąd: N54,35° E18,63° (Gdańsk)

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


Dodajesz nową kolumnę np. "pozycja" - i przypisujesz dla nich pozycje, i wtedy: ORDER BY pozycja ASC


--------------------
Go to the top of the page
+Quote Post
devdev
post 27.11.2009, 17:27:11
Post #3





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 8.06.2009

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


to wiem u mnie to kolumna "kol"

Ale dzieki zapomniałem o "ASC"

Ten post edytował devdev 27.11.2009, 17:27:47
Go to the top of the page
+Quote Post
b4x
post 27.11.2009, 17:28:53
Post #4





Grupa: Zarejestrowani
Postów: 658
Pomógł: 95
Dołączył: 20.12.2005
Skąd: N54,35° E18,63° (Gdańsk)

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


No to proste zapytanie do MYSQL'a:

  1. UPDATE `pages` SET `kol` = "'.$nowa_pozycja.'" WHERE `id` = "'.$id_page.'"
- coś takiego?


--------------------
Go to the top of the page
+Quote Post
devdev
post 27.11.2009, 17:31:09
Post #5





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 8.06.2009

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


ale np jak pozycja pozycje 2 dać w gore 1 to wtedy obie pozycje maja 1

nie mam sposobu żeby updetowac winksmiley.jpg
Go to the top of the page
+Quote Post
b4x
post 27.11.2009, 17:41:22
Post #6





Grupa: Zarejestrowani
Postów: 658
Pomógł: 95
Dołączył: 20.12.2005
Skąd: N54,35° E18,63° (Gdańsk)

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


Jeśli chcesz przenieść niżej: pobierasz `kol` z niższym numerem od aktualnego od `kol` - i analogicznie jak chcesz 'w górę' przenieść to pobierasz jedno większe, np:


  1. $query = mysql_fetch_assoc(mysql_query('SELECT * FROM `pages` WHERE `id` = "'.$jakies_tam_id.'"'));
  2. $wyzej = mysql_fetch_assoc(mysql_query('SELECT * FROM `pages` WHERE `kol` > "'.$query['kol'].'" ORDER BY `kol` DESC'));
  3.  
  4. $nowa_pozycja = $wyzej['kol'];
  5.  
  6. mysql_query('UPDATE `pages` SET `kol` = "'.$nowa_pozycja.'" WHERE `id` = "'.$query['kol'].'"'); // Ustaw nową pozycję dla elementu zmienianego
  7. mysql_query('UPDATE `pages` SET `kol` = "'.$query['kol'].'" WHERE `id` = "'.$wyzej['id'].'"');
  8.  
  9. // Coś w ten deseń
  10.  



--------------------
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: 30.06.2025 - 17:30