login  Naam:   Wachtwoord: 
Registreer je!
 Forum

omhoog en omlaag opschuiven

Offline php_newbie - 22/08/2008 23:37
Avatar van php_newbieNieuw lid ik ben bezig met een cms en ik wil dat de gebruiker menu items omhoog en omlaag kan opschuiven.
Mijn pagina's/menu:
1. Home
2. Artiesten
2.1 artiest 1
2.2 artiest 2
2.3 artiest 3
2.4 artiest 4
etc.
maar nou wil ik dat je bijv artiest 3 boven artiest 2 komt door middel van omhoog en omlaag knop..
Deze gegevens worden uit een mysql database gehaald..
Ook heb ik deze script gekregen van iemand maar weet niet hoe ik deze moet toepassen:
  1. <?
  2.  
  3. function herrangschikItem($item_id,$richting) {
  4. # Volgens mij moet 1 en ander andersom ....
  5. if ( $richting == 'omhoog' ) {
  6. $teken = '<';
  7. $sortering = 'ASC';
  8. }
  9. if ( $richting == 'omlaag' ) {
  10. $teken = '>';
  11. $sortering = 'DESC';
  12. }
  13.  
  14. # Huidige status van het te verplaatsen item ophalen
  15. $result = mysql_query(sprintf("SELECT * FROM _tabel WHERE item_id = %d",$item_id));
  16. $item_aangeklikt = mysql_fetch_assoc($result);
  17.  
  18. # Het item naast bovenstaand item selecteren
  19. $query = "SELECT * FROM _tabel WHERE volgorde_nr %s %d ORDER BY volgorde_nr %s LIMIT 1";
  20. $result = mysql_query($query_,$teken,$item_aangeklikt['volgorde_nr'],$sortering);
  21. $item_ernaast = mysql_fetch_assoc($result2);
  22.  
  23. # Beidde items omdraaien qua volgorde nummer
  24. $query = "UPDATE _tabel SET volgorde_nr = %d WHERE item_id = %d";
  25. mysql_query(sprintf($query,$item_aangeklikt['volgorde_nr'],$item_ernaast['item_id']));
  26. mysql_query(sprintf($query,$item_ernaast['volgorde_nr'],$item_aangeklikt['item_id']));
  27.  
  28. }
  29. ?>

net als dit:
http://b.imagehost.org/0383/voorbeeld.jpg

hoop snel antwoord te krijgen..alvast bedankt

2 antwoorden

Gesponsorde links
Offline Echron - 23/08/2008 00:38
Avatar van Echron Grafische interesse Je moet een functie maken die volgende query's doet:

via het id van het item dat je wil verplaatsen het rangnummer opvragen

het id van het item dat boven/onder(naargelang de actie) van het te verplaatsen item bevind

via die 2 id's de rangnummers van deze 2 items omwisselen.
Offline JBke - 23/08/2008 08:33
Avatar van JBke PHP gevorderde Wens je dat de data mee veranderd in de database of niet??
Indien niet zou ik al de elementen uitlezen endaarna met jquery/ javascript tewerk gaan.

Ik heb zelf een mooie tree van jquery die drag & drop toelaat en bij elke drag/drop een functie kan triggeren die op zich weer naar php gestuurd kan worden om een database query aan te spreken en de drag/drop indien gewenst ook aan te passen in de database. Gebruik makend van Ajax.

Ik kan je het script wel bezorgen.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.173s