Avatar billede bjarkeml Nybegynder
07. juni 2008 - 10:00 Der er 1 kommentar og
1 løsning

Menu og orden/rækkefølge, hvordan?

Jeg vil gerne lave et system hvor jeg kan ændre rækkefølgen i en menu i mit cms. Så når man trykker på et lille plus ikon, så rykker den pågældende tekst en tak op, og når man på minus så rykker teksten en tak ned. Kan det lade sig gøre og i så fald hvor skal jeg starte??

Nogen forslag??
Avatar billede fant0mas Nybegynder
07. juni 2008 - 14:06 #1
Her er lidt hurtigt, men den er lidt farlig, da den kræver at sorteringen fra start er sat, og at nye rækker skal have sat sorteringsrækken.
Men her er lidt at bygge videre på: (Hvis du kører fast, så skriv igen, så laver vi det færdigt)

Rækker: id(int), name(varchar), sortering(int)

<?php
// pony.php
// database forbind her

$sql = 'SELECT id, name, sorting FROM menu ORDER BY sorting ASC';
$query = mysql_query($sql) or die(mysql_error());

$maxrows = mysql_num_rows($query);
$i = 1;
while($result = mysql_fetch_assoc($query)){
    if(($i != 1)?$op = ' <a href="?flyt='.$result['id'].'&op='.$i.'">OP</a>' :$op = "");
    if(($i != $maxrows)?$ned = ' <a href="?flyt='.$result['id'].'&ned='.$i.'">NED</a> ' :$ned = "");

    echo $op.$ned.'Nr: '.$result['sorting'].' Id: '.$result['id'].' Name: '.$result['name'].'<br>';
   
    $i++;
}

if($_GET['flyt']){
    if($_GET['op']){
        $op = $_GET['op'];
        $opit = $op -1;
        mysql_query("UPDATE menu SET sorting = '$op' WHERE sorting = '$opit'") or die(mysql_error());
        mysql_query("UPDATE menu SET sorting = '$opit' WHERE id = '$_GET[flyt]'") or die(mysql_error());
       
        header("location: ?");
    }
    if($_GET['ned']){
        $ned = $_GET['ned'];
        $nedit = $ned +1;
        mysql_query("UPDATE menu SET sorting = '$ned' WHERE sorting = '$nedit'") or die(mysql_error());
        mysql_query("UPDATE menu SET sorting = '$nedit' WHERE id = '$_GET[flyt]'") or die(mysql_error());
       
        header("location: ?");
    }
   
}
?>
Avatar billede bjarkeml Nybegynder
18. august 2010 - 13:29 #2
Lukket
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester