Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kolejność w bazie
Mody23
post
Post #1





Grupa: Zarejestrowani
Postów: 276
Pomógł: 0
Dołączył: 30.06.2010

Ostrzeżenie: (10%)
X----


Witam!

Mam tabelę w bazie. Chodzi o to, że tabela ma wiele pól, ale ja mam pytanie co do jednego - order.
Załóżmy że mam w bazie rekordy o nazwie i order'ze kolejno:

TEST - 1
TESTER - 2
TESTT - 3
TESTERR - 4

I teraz chciałbym tym swobodnie sterować góra/dół, tzn.:

TEST - 1 - GÓRA/DÓŁ
TESTER - 2 - GÓRA/DÓŁ
TESTT - 3 - GÓRA/DÓŁ
TESTERR - 4 - GÓRA/DÓŁ

No i jak mógłbym tym sterować? Załóżmy, że chcę pole TESTT przesunąć w górę o jedną pozycję. Jak mam zrobić aby pole TESTT "zamieniło się" order'em z polem, które jest nad tym polem, czyli TESTER ?

Pozdr
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Mody23
post
Post #2





Grupa: Zarejestrowani
Postów: 276
Pomógł: 0
Dołączył: 30.06.2010

Ostrzeżenie: (10%)
X----


Dzięki panowie - ja zrobiłem tak, jeszcze zanim się wypowiedzieliście:

  1. $sql = "SELECT field_order
  2. FROM " . FIELDS_TABLE . "
  3. WHERE id = $id_form";
  4. $result = $db->sql_query($sql);
  5. while( $row = $db->sql_fetchrow($result) )
  6. {
  7. $orderr = $row['field_order'];
  8. }
  9.  
  10. $order = $orderr + 1;
  11. $orderp = $order - 1;
  12.  
  13. $sql = "SELECT id
  14. FROM " . FIELDS_TABLE . "
  15. WHERE field_order = $order";
  16. $result = $db->sql_query($sql);
  17. while( $row = $db->sql_fetchrow($result) )
  18. {
  19. $idorder = $row['id'];
  20. }
  21.  
  22. $sql = "UPDATE " . FIELDS_TABLE . "
  23. SET field_order = $orderp
  24. WHERE id = $idorder";
  25. if ( !($result = $db->sql_query($sql)) )
  26. {
  27. message_die(GENERAL_ERROR, 'jakis error', '', __LINE__, __FILE__, $sql);
  28. }
  29.  
  30. $sql = "UPDATE " . FIELDS_TABLE . "
  31. SET field_order = $order
  32. WHERE id = $id_form";
  33. if ( !($result = $db->sql_query($sql)) )
  34. {
  35. message_die(GENERAL_ERROR, 'jakis error', '', __LINE__, __FILE__, $sql);
  36. }



Tylko czy to będzie działać jak powinno?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 03:42