Designupplägg gentemot databas - hur designa på bästa sätt?

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Feb 2005

Designupplägg gentemot databas - hur designa på bästa sätt?

Håller på att utöka stödet för hanteringen av meddelanden på radnote så man ska kunna placera dem i grupper. Jag har löst det mesta, just nu kan man skapa/ta bort och filtrera grupper. Men problemet kommer till hur jag ska lösa hur man fäster ett meddelande till en grupp. Dels hur användaren helst skulle vilja göra på snabbast smidigast sätt och dels hur man på ett ungefär ska lösa det så man inte gör en på tok för intensiv förfrågning till databasen.

Min första tanke var en rullgardinslista längst till höger om varje meddelande (se bilden nedan). Rullgardinslistan har gruppen den tillhör som markerad, ändrar man i den så skickas det nya värdet till databasen. Problemet som uppstår med den lösningen är, hur fyller jag upp en variabel/array med grupperna som ska visas i rullgardinen samtidigt som jag kollar vilken grupp som ska vara markerad och samtidigt inte skicka massor med förfrågningar mot databasen?

Hanteringen av grupper ser just nu ut så här (till synes inte helt fulländad):

Så rent användarmässigt, hur skulle man vilja gruppera in meddelanden och vad är smidigast rent tekniskt att lösa det kodmässigt?

i7 920 | 12GB DDR3 | GTX 480 | GA-X58A-UD7 | 160GB SSD X25-M G2 | 1TB F3 HD103SJ | W7 64-bit | Mac Mini
Webb: bluekitestudios.com

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Feb 2005

Löste det genom att skapa en array av grupperna och sedan nästla en while-satts som jämför gentemot den aktuella raden som skrivs ut från databasen för att sedan eka ut resultatet. Ungefär så här:

//Group echo ("<form name=\"form\" id=\"form\" action=\"\"><select name='jumpMenu' id='jumpMenu' onchange=\"MM_jumpMenu('parent',this,0)\">"); $x=0; while($x <= count($grouparray)) : if($grouparray[$x] == $row['notegroup']){ echo '<option value="changegroup.php?n=' . $row['note'] . '&g=' . $grouparray[$x] . '" selected="selected">' . $row['notegroup'] . '</option>'; }else{ echo '<option value="changegroup.php?n=' . $row['note'] . '&g=' . $grouparray[$x] . '">' . $grouparray[$x] . '</option>'; } $x++; endwhile; echo '</select></form></td>';

Sedan är ju frågan om det är användarvänligt, men det får vi se!

i7 920 | 12GB DDR3 | GTX 480 | GA-X58A-UD7 | 160GB SSD X25-M G2 | 1TB F3 HD103SJ | W7 64-bit | Mac Mini
Webb: bluekitestudios.com

Trädvy Permalänk
Medlem
Plats
Göteborg
Registrerad
Jun 2009

Okay.

[ i7 8700k | MSI Z370 Krait | 16GB Corsair | Palit 1070 Dual | Netwon R3 600W | Luna Swive 700 ]

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Feb 2005
Citat:

Ursprungligen inskrivet av SayZk
Okay.

Ifall någon mer stöter på samma problem

i7 920 | 12GB DDR3 | GTX 480 | GA-X58A-UD7 | 160GB SSD X25-M G2 | 1TB F3 HD103SJ | W7 64-bit | Mac Mini
Webb: bluekitestudios.com