Items verplaatsen in db

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Bert Sinnema

Bert Sinnema

19/06/2006 21:57:00
Quote Anchor link
Goedenavond,

Het volgende: Ik wil items die ik uit een database haal kunnen verschuiven van plaats.. Elk item heeft een id en word op het id gesorteerd (oplopend). de bovenste begint met het id 1 de 2e met 2 enz.

voorbeeld:

1 Item1
2 Item2
3 Item3

Nu wil ik Item2 omhoogschuiven zodat Item2 bovenaan komt en Item 1 als 2e verschijnt

1 Item2
2 Item1
3 Item 3

Nu heb ik de volgende functie voor het omhoogschuiven bedacht.


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
function up($id)
    {

      $huidig = $_GET['up'];
      $boven = huidig - 1;
    
      $sql = array("UPDATE boxes SET id = '1000' WHERE id = '".$boven."'",
                   "UPDATE boxes SET id = '".$boven."' WHERE id = '".$huidig."'",
                   "UPDATE boxes SET id = '".$huidig."' WHERE id = '1000'")  ;

    for ($i=0;$i<2;$i++)      
    {

      mysql_query ( $sql[$i] ) or die ( mysql_error ( ) ) ;
    }
    
    
    }


?>

maar helaas het werkt niet na behoren.. de ID nummers raken compleet in de war..
Iemand raad?
Gewijzigd op 01/01/1970 01:00:00 door Bert Sinnema
 
PHP hulp

PHP hulp

16/11/2024 06:53:28
 
Erik Rijk

Erik Rijk

19/06/2006 22:06:00
Quote Anchor link
wil je dat item 2 altijd bovenaan staat of wil je kunnen wisselen?
 
Bert Sinnema

Bert Sinnema

19/06/2006 22:09:00
Quote Anchor link
Ja ik wil kunnen wisselen.
Je moet het bekijken als een tabel waar achter elk item 2 links staan up / down. zodat je de items op en neer kunt verplaatsen
 
Terence Hersbach

Terence Hersbach

19/06/2006 22:11:00
Quote Anchor link
@erik:
Quote:
Ik wil items die ik uit een database haal kunnen verschuiven van plaats..


@bert:
misschien is het beter om ipv 1000 naar 0 te zetten..
edit:
dat is vanwege autoIncrement.. dan zou de volgende waarschijnlijk 1001 zijn en dan zou de volgende inderdaad een rotzooi zijn als je dan 1001 - 1 doet bij $boven.
edit2:
nog een foutje:
je doet bij $boven = huidig - 1;
moet zijn $boven = $huidig - 1;
Gewijzigd op 01/01/1970 01:00:00 door Terence Hersbach
 
Bert Sinnema

Bert Sinnema

19/06/2006 22:16:00
Quote Anchor link
ik gebruikt geen auto_increment.....
Ach die kleine foutjes doen de das dan weer om he.
Bedank

Edit
Het blijkt nog niet helemaal te kloppen. Maarja morgen weer een dag..
Gewijzigd op 01/01/1970 01:00:00 door Bert Sinnema
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.