[JS]Array: Database met meerdere records sorteren?

Pagina: 1
Acties:
  • 110 views sinds 30-01-2008
  • Reageer

  • Sassie
  • Registratie: November 1999
  • Laatst online: 16-09 20:38
Ik ben van plan om mijn smilies-site (zie sig) eens wat anders in te gaan delen. Dit wil ik doen dmv een JavaScriptje met een array omdat dit makkelijker updaten is.

Nu heb ik hierbij dus meerdere (3) velden nodig:
* filename
* maker
* makers homepage/email

Ik wil deze ook sorteren.

Voorbeeld van een database van arrays met meerdere velden:
http://webreference.com/dhtml/column4/arData.html

De code zoals ik die nu heb (met een veld):
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<script language="JavaScript">
var dirname1="images/Smilies/"
var dirname2="http://www.sassiessite.f2s.com/images/Smilies/"

var smilies=new Array()
smilies[0]="smcowboy.gif"   
smilies[1]="a_puh.gif"  
smilies[2]="a_wink.gif" 
//enz tot de laatste smilie

smilies.sort();
</script>

<script language="JavaScript">
document.write("<b>Aantal smilies: "+smilies.length+"</b><br><br>");
</script>

<script language="JavaScript">
document.write("<form>")
for (count=0; count<smilies.length; count++)
{
    document.write("<INPUT type='text' name='"+smilies[count]+
"' value='[img]"+dirname2+smilies[count]+"[/img]' size='75'>
   [img]'"+dirname1+smilies[count]+"'[/img]   "
+smilies[count][1]+"   "+smilies[count][2]+"<br>")
}
document.write("</form>")
</script>

Hierbij moet dus bij smilies[0]="naam.gif" nog smilies[0][1]="Maker" en smilies[0][2]="Homepage/email" bij komen en dat moet in dezelfde regel uit geschreven worden als de smilie ed waar het bij hoort (zoals je ziet staat dat al in de code).

Kan dit in JavaScript (ik neem aan van wel :?) en als dit niet kan wat is dan de beste oplossing?
Kan ik zo dus verder gaan op deze weg?

PS: De document.write codes ed. kan ik zelf wel uitvogelen. :)

edit:
FF de layout weer wat minder breed maken :(

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

code:
1
2
smilies [0] ="naam.gif";
smilies [0][1] = "...";

is niet mogelijk, want je geeft bij het 2e regeltje namelijk aan, dat smilies [0] een Array moet worden, en dat index 1 van die array de waarde "..." moet krijgen.

Ikzelf zou het zo doen:
ik het al in JS zou doen, maar dat ff daar gelaten ;))
code:
1
2
3
4
5
6
7
8
9
10
11
12
smilies = new Array;

smilies [0][ "naam"  ]    = "naam.gif";
smilies [0][ "maker" ]    = "maker";
smilies [0][ "Homepage" ] = "http://www.domein.com";

smilies [1][ "naam"  ]    = "naam2.gif";
smilies [1][ "maker" ]    = "maker2";
smilies [1][ "Homepage" ] = "http://www.domein2.com";
// etcetera

smilies.sort()

zou denk ik wel moeten werken.

Anders handmatig sorteren met bubblesort ofzo (ben niet zo'n held in sorteeralgoritmes :7)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

Je kunt gewoon een multidimensional array gebruiken idd:

var smilies=new Array(
["smcowboy.gif","maker","homepage/email"],
["a_puh.gif","maker","homepage/email"],
["a_wink.gif","maker","homepage/email"]
);

of zoiets..

  • r0bert
  • Registratie: September 2001
  • Laatst online: 11-08 16:19
Hmm .. ik ben toevallig met eens site bezig waar ik dat ook gebruik ..

http://www.artprofits.com/inlezen.html?1

En die blaat[0][n] arrays, gebruik ik op http://www.artprofits.com/?1

Mssn dat je dér wat aan hebt

  • Sassie
  • Registratie: November 1999
  • Laatst online: 16-09 20:38
Ok thanx voor de tips.

* Sassie had als zo'n idee dat het niet helemaal zou gaan kloppen (had het alleen nog niet echt uitgeprobeerd).