record_searcher
Hejsa!Jeg har download dette script, for at ville lave en søgemodul, på min kommende hjemmeside, men jeg synes det virker lidt svært at få styr på. Jeg har hele zipfilen hvis det er nemmere.
Kom igang med scriptet
**********************
Lad os så komme igang!
<SCRIPT LANGUAGE=\"JAVASCRIPT\">
<!--
// Her skriver du kilden til din pil som vises ved resultat
var PointerPicture = \"<IMG SRC=hot.gif width=26 height=20 align=top>\";
// Hvis intet billede er skrevet bliver boksen tom
var ResultBody = \"<BODY BGCOLOR=\'#ffffff\' TEXT=\'#000000\' LINK=\'#000000\'\" +
\" VLINK=\'#000000\' BACKGROUND=\'marble.jpg\'>\";
// ^^^^^^^^^^ Vælg et baggrundbillede (Ikke Nødvendigt)
var ResultBGCOLOR = \"#ffffff\"; // Baggrundsfarven i tabellen i resultater
// Slut på egenskaber for den kommende resultat side
function compress(str) {
var h=str;
var leading=(h.charAt(0) == \" \" || h.charAt(0) == \"*\" );
var trailing=(h.charAt(h.length-1) == \" \" || h.charAt(h.length-1) == \"*\");
while (trailing || leading) {
if (leading) {
h=h.substring(1,h.length);
leading=(h.charAt(0) == \" \" || h.charAt(0) == \"*\" );
}
if (trailing) {
h=h.substring(0,h.length-1);
trailing=(h.charAt(h.length-1) == \" \" || h.charAt(h.length-1) == \"*\");
}
}
// Dette skriver til textboksen (Her må ikke rettes!!!!)
document.searchForm.search_name.value=h;
return document.searchForm.search_name.value;
}
function checkField() {
if ( compress(document.searchForm.search_name.value) != \'\' ) {
find(document.searchForm, indexedPage);
return true }
// Hvis brugeren ikke har skrevet noget
// ||||| Skriv din alert boks besked her
else { alert(\"Venligst indtast søgeord\");
document.searchForm.search_name.focus();
return false }
}
function makeArray(n){
this.length = n;
for (i = 1; i <= n; i++){
this[i] = \"\";
}
}
function index (name,adr,phone,email,link,keywds) {
var argc = index.arguments.length;
var keys = argc -5 ;
this.adr = adr;
this.keywords = new makeArray(keys);
this.keywords[1] = name;
this.keywords[2] = adr;
this.keywords[3] = phone;
this.keywords[4] = email;
this.keywords[5] = link;
this.link = link
for(var i = 2; i <= keys+1; i++) {
this.keywords[i] = index.arguments[i];
}
}
//Her skal du skrive præcist hvor mange indexed pages der er f.eks 20
// vvv
var indexedPage = new makeArray(3);
// lav din egen indexedPage[12] eller andet som her
// Som her: indexedPage[i] = new index(\"Navn\",\"Adresse\",\"Telefon\",
// \"E-mail\",\"URL\");
// Din liste SKAL se sådan ud som vist ovenfor. Der MÅ KUN være ET nøgleord til personen
// Der skal mindst være et af det hele før det virker
indexedPage[1]=new index(\"Markus Drag\",\"Computervej 18\",\"20205555\",\"goldduck@e-box.dk\",\"http://www.freewebsite.dk/mdr\");
indexedPage[2]=new index(\"Viggo Bakken\",\"Amigavej 56\",\"20212020\",\"viggo@site.dk\",\"http://www.viggo.dk\");
indexedPage[3]=new index(\"Peter Hansen\",\"Officevej 7\",\"34345050\",\"peter@peter.dk\",\"http://www.peter.dk\");
// Hvis du glemmer at skrive det rigtige antal indexedPages så bliver de frakoblet så husk det!!!
// Nu til formen
function find(form,indexedPage) {
var key;
var tmp_find_word;
var find_word = form.search_name.value;
var match = false;
var doc;
var resultOne =\'\'; //Part 1 af output
var resultTwo =\'\'; //part 2 af output
var resultThr =\'\'; //part 3 af output
var N_found = 0;
// Søg og output
var j=0;
for (var i = 1; i <= indexedPage.length; i++) {
for (var n in indexedPage[i].keywords) {
key = indexedPage[i].keywords[n].toString();
key = key.toUpperCase();
tmp_find_word = find_word.toUpperCase();
if ((key.indexOf(tmp_find_word) != -1 ||
tmp_find_word.indexOf(key) != -1) && (n != \"length\")) {
match = true;
j++;
key1 = key.substring(0,key.indexOf(tmp_find_word)) +
\"<B>\" + tmp_find_word + \"</B>\";
key2 = key1 + key.substring(key1.length-7,key.length);
resultTwo += \" <TR><TD valign=top align=right><i>\" + j + \". </i> \" +
PointerPicture + \"</TD>\\n\";
resultTwo += \" <TD><FONT FACE=\'Arial\' SIZE=-1>\\n\";
resultTwo += \" Nøgleord: \" + key2 + \"<br>\\n\";
resultTwo += \" Navn: \" + indexedPage[i].keywords[1] + \"<br>\\n\";
resultTwo += \" Adresse: \"+ indexedPage[i].keywords[2] + \"<br>\\n\";
resultTwo += \" Tlf: \" + indexedPage[i].keywords[3] + \"<br>\\n\";
resultTwo += \" E-mail: \" + indexedPage[i].keywords[4] + \"<br>\\n\";
resultTwo += \" URL: \" + indexedPage[i].keywords[5] + \"<Br>\\n\";
resultTwo += \" </TD></TR>\\n\";
N_found = j;
}
}
}
// HVIS DER IKKE VAR ET ORD DER MATCHEDE...
if (!match) {
resultThr += \" <TR><TD><FONT FACE=\'Arial\' SIZE=-1>Beklager, ingen person passede til søgeordet <B>\" +
find_word + \"</B>\\n\";
resultThr += \" <br><center>Venligst prøv igen eller tjek for stavefejl og lign.</center></FONT></TD></TR>\\n\";
}
resultThr += \" </TABLE></TD></TR>\\n\";
resultThr += \"</TABLE><BR>\\n\";
resultThr += \"</CENTER>\\n\";
resultThr += \"</BODY></HTML>\\n\";
// hvis et ord passer
resultOne += \"<HTML><HEAD><TITLE>Resultater for \" + find_word +
\"</TITLE></HEAD>\";
resultOne += ResultBody +\"\\n\";
resultOne += \"<CENTER><FONT FACE=\'Arial\' SIZE=+2>Søgeresultater for <B>\" +
find_word + \"</B></FONT><br>\\n\";
if (match)
if (N_found == 1) resultOne += \"<FONT FACE=\'Arial\' SIZE=1><B>1</B> \" +
\"matchende resultat er fundet</FONT><br><br>\\n\";
else resultOne += \"<FONT FACE=\'Arial\' SIZE=1><B>\" + N_found +
\"</B> resultater der matchede er fundet</FONT><br><br>\\n\";
resultOne += \"<TABLE border=1 CELLSPACING=\'0\' CELLPADDING=\'0\'><TR><TD>\\n\";
resultOne += \" <TABLE border=0 CELLSPACING=\'0\' CELLPADDING=\'8\' BGCOLOR=\'\" +
ResultBGCOLOR + \"\'>\\n\";
// Hvis du bruger frames?
if (parent == null || parent == self) { doc = window.document; }
else { doc = parent.main.document; }
// ^^^^
// her skrives det frame navn hvor resultat siden skal vises i
doc.open();
doc.write(resultOne);
doc.write(resultTwo);
doc.write(resultThr);
doc.close();
}
-->
</SCRIPT>
