Jeg har bare et lille problem: Når man skal videre til de næste 10 resultater trykker man på >> (fx.) Hvilket link skal det henføre til?? Min søgescript ligger på result.asp - så det burde vel være således: <a href=result.asp?page=\" & intPage - 1 & \"><<</a> Men her linker den bare til min main.asp!! Skal også lige siges at jeg kører med frames - men kan dette have nogen betydning?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Nute: Jeg har prøvet at sætte target på - den gør det samme! Min mainframe hedder \'target\' og her er det main.asp er i - og når man søger skifter den til result.asp; men hopper tilbage når man skal se side 2 af søgningen...! Netsrac: Jeg kopiere til koden... 2 sec..!
strKEYWORD = Trim(Request.Form(\"KEYWORD\")) strAMTKEYWORD = Trim(Request.Form(\"AMT\")) strBYKEYWORD = Trim(Request.Form(\"BY\")) strKATEGORIKEYWORD = Trim(Request.Form(\"KATEGORI\")) strPOSTNRKEYWORD = Trim(Request.Form(\"POSTNR\")) strUGEKEYWORD = Trim(Request.Form(\"UGE\")) If Len(strKEYWORD) = 0 Then Response.Clear Response.Redirect(\"../grundsten/main.asp\") Else strKEYWORD = Replace(strKEYWORD,\"\'\",\"\'\'\") End If
intPage = Request(\"page\") If isNumeric(intPage) = False Or intPage < 1 Then intPage = 1 End If
\' Her kommer SQLstrengen! strSQL = \"SELECT * FROM VARE WHERE\" IF strAMTKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AMT LIKE \'%amt%\'\" ELSE strSQL = strSQL & \" AMT = \'\" & strAMTKEYWORD & \"\'\" END IF IF strBYKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND (BY LIKE \'%a%\' OR \'%e%\' OR \'%i%\' OR \'%o%\' OR \'%u%\' OR \'%ø%\' OR \'%æ%\' OR \'%å%\')\" ELSE strSQL = strSQL & \" AND BY = \'\" & strBYKEYWORD & \"\'\" END IF IF strKATEGORIKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND KATEGORI LIKE \'%beklædning%\'\" ELSE strSQL = strSQL & \" AND KATEGORI = \'\" & strKATEGORIKEYWORD & \"\'\" END IF IF strPOSTNRKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND POSTNR BETWEEN 100 AND 10000\" ELSE strSQL = strSQL & \" AND POSTNR = \" & strPOSTNRKEYWORD & \"\" END IF IF strUGEKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND UGE BETWEEN 0 AND 53\" ELSE strSQL = strSQL & \" AND UGE = \" & strUGEKEYWORD & \"\" END IF strSQL = strSQL & \" AND (VARENAVN = \'\" & strKEYWORD & \"\' OR VAREBESKRIVELSE LIKE \'%\" & strKEYWORD & \"%\')\" \'Opretter forbindelse til databasen og udfører SQLstrengen strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\"../soeg/lavprisvarehus.mdb\") Set rs = Server.CreateObject(\"ADODB.RecordSet\") rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then Response.Write \"<br><br>\" rs.PageSize = 1 rs.AbsolutePage = intPage intRecCount = rs.PageSize intPageCount = rs.PageCount Response.Write \"<p><b>Side \" & intPage & \" af \" & intPageCount & \"</b></p>\" Response.Write \"<div align=\"\"center\"\"><br><br><br><table bgcolor=\"\"black\"\" width=\"\"80%\"\" cellspacing=\"\"1\"\" cellpadding=\"\"2\"\" border=\"\"0\"\"><tr bgcolor=\"\"#FF9933\"\" class=\"\"underbanner\"\"><td width=\"\"10%\"\">Vare</td><td width=\"\"15%\"\">Beskrivelse</td><td width=\"\"20%\"\">Evt. bemærkning</td><td width=\"\"10%\"\">Førpris</td><td width=\"\"10%\"\">Tilbudspris</td><td width=\"\"5%\"\">Uge</td><td>Forhandler</td></tr>\"
Do While Not rs.EOF And intRecCount > 0 Response.Write \"<tr bgcolor=\"\"white\"\"><td>\" & rs(\"VARENAVN\") &\"</td><td>\" & rs(\"VAREBESKRIVELSE\") &\"</td><td>\"& rs(\"DIVERSE\") &\"</td><td>\" & FormatCurrency(rs(\"PRISFOER\"),2) & \"</td><td>\"& FormatCurrency(rs(\"PRISNU\"),2) &\"</td><td>\"& rs(\"UGE\") &\"</td><td>\"& rs(\"FIRMANAVN\") & \", \" & rs(\"ADRESSE\") & \", \"& rs(\"POSTNR\") & \" \" & rs(\"BY\") & \"</td></tr>\" intRecCount = intRecCount - 1 rs.MoveNext Loop Response.Write \"</table></div>\" ELSE Response.Write \"<br><br><div align=\"\"center\"\">Søgningen på \'\"& strKEYWORD &\"\' gav intet resultat!</div>\" END IF
rs.Close Set rs = Nothing
Response.Write \"<p>Gå til side \" For intNum = 1 To intPageCount Response.Write \"<a href=result.asp?page=\" & intNum & \" target=\"\"target\"\">\" & intNum & \"</a> \" Next
Response.Write \"<p>\" If Clng(intPage) > 1 Then Response.Write \"<a href=result.asp?page=\" & intPage - 1 & \"><<</a>\" Else Response.Write \"<<\" End If
Response.Write \" \"
If Clng(intPage) < Clng(intPageCount) Then Response.Write \"<a href=result.asp?page=\" & intPage + 1 & \" target=target>>></a> \" Else Response.Write \">>\" End If
Du skal have alle dine variabler med igen jo. If Clng(intPage) > 1 Then Response.Write \"<a href=result.asp\" & request.servervariables(\"QUERY_String\") & \"?page=\" & intPage - 1 & \"><<</a>\" Else Response.Write \"<<\" End If
Øhh... dvs. at min QUERY_String er strSQL??? SÅ det skal se sådan ud ik\'? If Clng(intPage) < Clng(intPageCount) Then Response.Write \"<a href=result.asp?\" & request.servervariables(\"strSQL\") & \"page=\" & intPage + 1 & \">Næste 10</a>\" Else Response.Write \"<<\" End If
Men det virker stadigvæk ikke - den hopper bare tilbage til main.asp
Øhh.. det kan være at der lidt rod i filerne! Det er sådan at result.asp kun har soegescript.asp inkluderet - kunne det have noget at skulle have sagt?
strKEYWORD = Trim(Request(\"KEYWORD\")) strAMTKEYWORD = Trim(Request(\"AMT\")) strBYKEYWORD = Trim(Request(\"BY\")) strKATEGORIKEYWORD = Trim(Request(\"KATEGORI\")) strPOSTNRKEYWORD = Trim(Request(\"POSTNR\")) strUGEKEYWORD = Trim(Request(\"UGE\")) If Len(strKEYWORD) = 0 Then Response.Clear Response.Redirect(\"../grundsten/main.asp\") Else strKEYWORD = Replace(strKEYWORD,\"\'\",\"\'\'\") End If
intPage = Request(\"page\") If isNumeric(intPage) = False Or intPage < 1 Then intPage = 1 End If
\' Her kommer SQLstrengen! strSQL = \"SELECT * FROM VARE WHERE\" IF strAMTKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AMT LIKE \'%amt%\'\" ELSE strSQL = strSQL & \" AMT = \'\" & strAMTKEYWORD & \"\'\" END IF IF strBYKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND (BY LIKE \'%a%\' OR \'%e%\' OR \'%i%\' OR \'%o%\' OR \'%u%\' OR \'%ø%\' OR \'%æ%\' OR \'%å%\')\" ELSE strSQL = strSQL & \" AND BY = \'\" & strBYKEYWORD & \"\'\" END IF IF strKATEGORIKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND KATEGORI LIKE \'%beklædning%\'\" ELSE strSQL = strSQL & \" AND KATEGORI = \'\" & strKATEGORIKEYWORD & \"\'\" END IF IF strPOSTNRKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND POSTNR BETWEEN 100 AND 10000\" ELSE strSQL = strSQL & \" AND POSTNR = \" & strPOSTNRKEYWORD & \"\" END IF IF strUGEKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND UGE BETWEEN 0 AND 53\" ELSE strSQL = strSQL & \" AND UGE = \" & strUGEKEYWORD & \"\" END IF strSQL = strSQL & \" AND (VARENAVN = \'\" & strKEYWORD & \"\' OR VAREBESKRIVELSE LIKE \'%\" & strKEYWORD & \"%\')\" \'Opretter forbindelse til databasen og udfører SQLstrengen strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\"../soeg/lavprisvarehus.mdb\") Set rs = Server.CreateObject(\"ADODB.RecordSet\") rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then Response.Write \"<br><br>\" rs.PageSize = 1 rs.AbsolutePage = intPage intRecCount = rs.PageSize intPageCount = rs.PageCount Response.Write \"<p><b>Side \" & intPage & \" af \" & intPageCount & \"</b></p>\" Response.Write \"<div align=\"\"center\"\"><br><br><br><table bgcolor=\"\"black\"\" width=\"\"80%\"\" cellspacing=\"\"1\"\" cellpadding=\"\"2\"\" border=\"\"0\"\"><tr bgcolor=\"\"#FF9933\"\" class=\"\"underbanner\"\"><td width=\"\"10%\"\">Vare</td><td width=\"\"15%\"\">Beskrivelse</td><td width=\"\"20%\"\">Evt. bemærkning</td><td width=\"\"10%\"\">Førpris</td><td width=\"\"10%\"\">Tilbudspris</td><td width=\"\"5%\"\">Uge</td><td>Forhandler</td></tr>\"
Do While Not rs.EOF And intRecCount > 0 Response.Write \"<tr bgcolor=\"\"white\"\"><td>\" & rs(\"VARENAVN\") &\"</td><td>\" & rs(\"VAREBESKRIVELSE\") &\"</td><td>\"& rs(\"DIVERSE\") &\"</td><td>\" & FormatCurrency(rs(\"PRISFOER\"),2) & \"</td><td>\"& FormatCurrency(rs(\"PRISNU\"),2) &\"</td><td>\"& rs(\"UGE\") &\"</td><td>\"& rs(\"FIRMANAVN\") & \", \" & rs(\"ADRESSE\") & \", \"& rs(\"POSTNR\") & \" \" & rs(\"BY\") & \"</td></tr>\" intRecCount = intRecCount - 1 rs.MoveNext Loop Response.Write \"</table></div>\" ELSE Response.Write \"<br><br><div align=\"\"center\"\">Søgningen på \'\"& strKEYWORD &\"\' gav intet resultat!</div>\" END IF
rs.Close Set rs = Nothing
Response.Write \"<p>Gå til side \" For intNum = 1 To intPageCount Response.Write \"<a href=result.asp?page=\" & intNum & \" target=\"\"target\"\">\" & intNum & \"</a> \" Next
Det er rigtigt! Jeg har taget nute\'s query streng.... men den hopper stadigvæk hen på main.asp!!! Der må sgu være rod i filerne/linksene...!
Jeg har 4 frames - en med top, en med søgefelter, så mainframen (target!) og en bund!
I \'target\' sidder main.asp - men når der søges i søgefeltet kommer result.asp med resultaterne! Result.asp består kun af 2 inkluderede filer; en navigationsbar og så soegescript.asp!!
Ok! Alt hvad I ser er fiktivt - altså er tilbudene på forside nogle JEG har fundet på; bare for at lave lidt fyld... Her er linket - søg på \'SKO\' http://wermelin-webdesign.dk/lavpris/
Den her skulle gerne virke: Læg mærke til at jeg bruger request i stedet for request.form <%
strKEYWORD = Trim(Request(\"KEYWORD\")) strAMTKEYWORD = Trim(Request(\"AMT\")) strBYKEYWORD = Trim(Request(\"BY\")) strKATEGORIKEYWORD = Trim(Request(\"KATEGORI\")) strPOSTNRKEYWORD = Trim(Request(\"POSTNR\")) strUGEKEYWORD = Trim(Request(\"UGE\")) If Len(strKEYWORD) = 0 Then Response.Clear Response.Redirect(\"../grundsten/main.asp\") Else strKEYWORD = Replace(strKEYWORD,\"\'\",\"\'\'\") End If
intPage = Request(\"page\") If isNumeric(intPage) = False Or intPage < 1 Then intPage = 1 End If
\' Her kommer SQLstrengen! strSQL = \"SELECT * FROM VARE WHERE\" IF strAMTKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AMT LIKE \'%amt%\'\" ELSE strSQL = strSQL & \" AMT = \'\" & strAMTKEYWORD & \"\'\" END IF IF strBYKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND (BY LIKE \'%a%\' OR \'%e%\' OR \'%i%\' OR \'%o%\' OR \'%u%\' OR \'%ø%\' OR \'%æ%\' OR \'%å%\')\" ELSE strSQL = strSQL & \" AND BY = \'\" & strBYKEYWORD & \"\'\" END IF IF strKATEGORIKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND KATEGORI LIKE \'%beklædning%\'\" ELSE strSQL = strSQL & \" AND KATEGORI = \'\" & strKATEGORIKEYWORD & \"\'\" END IF IF strPOSTNRKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND POSTNR BETWEEN 100 AND 10000\" ELSE strSQL = strSQL & \" AND POSTNR = \" & strPOSTNRKEYWORD & \"\" END IF IF strUGEKEYWORD = \"ALLE\" THEN strSQL = strSQL & \" AND UGE BETWEEN 0 AND 53\" ELSE strSQL = strSQL & \" AND UGE = \" & strUGEKEYWORD & \"\" END IF strSQL = strSQL & \" AND (VARENAVN = \'\" & strKEYWORD & \"\' OR VAREBESKRIVELSE LIKE \'%\" & strKEYWORD & \"%\')\" \'Opretter forbindelse til databasen og udfører SQLstrengen strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\"../soeg/lavprisvarehus.mdb\") Set rs = Server.CreateObject(\"ADODB.RecordSet\") rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then Response.Write \"<br><br>\" rs.PageSize = 1 rs.AbsolutePage = intPage intRecCount = rs.PageSize intPageCount = rs.PageCount Response.Write \"<p><b>Side \" & intPage & \" af \" & intPageCount & \"</b></p>\" Response.Write \"<div align=\"\"center\"\"><br><br><br><table bgcolor=\"\"black\"\" width=\"\"80%\"\" cellspacing=\"\"1\"\" cellpadding=\"\"2\"\" border=\"\"0\"\"><tr bgcolor=\"\"#FF9933\"\" class=\"\"underbanner\"\"><td width=\"\"10%\"\">Vare</td><td width=\"\"15%\"\">Beskrivelse</td><td width=\"\"20%\"\">Evt. bemærkning</td><td width=\"\"10%\"\">Førpris</td><td width=\"\"10%\"\">Tilbudspris</td><td width=\"\"5%\"\">Uge</td><td>Forhandler</td></tr>\"
Do While Not rs.EOF And intRecCount > 0 Response.Write \"<tr bgcolor=\"\"white\"\"><td>\" & rs(\"VARENAVN\") &\"</td><td>\" & rs(\"VAREBESKRIVELSE\") &\"</td><td>\"& rs(\"DIVERSE\") &\"</td><td>\" & FormatCurrency(rs(\"PRISFOER\"),2) & \"</td><td>\"& FormatCurrency(rs(\"PRISNU\"),2) &\"</td><td>\"& rs(\"UGE\") &\"</td><td>\"& rs(\"FIRMANAVN\") & \", \" & rs(\"ADRESSE\") & \", \"& rs(\"POSTNR\") & \" \" & rs(\"BY\") & \"</td></tr>\" intRecCount = intRecCount - 1 rs.MoveNext Loop Response.Write \"</table></div>\" ELSE Response.Write \"<br><br><div align=\"\"center\"\">Søgningen på \'\"& strKEYWORD &\"\' gav intet resultat!</div>\" END IF
rs.Close Set rs = Nothing
Response.Write \"<p>Gå til side \" For intNum = 1 To intPageCount Response.Write \"<a href=result.asp?page=\" & intNum & \" target=\"\"target\"\">\" & intNum & \"</a> \" Next
nute: Ja, jeg ved godt at det også skal rettes - men det løser ikke problemet! Problemer er når du trykker på >> (og der er linket korrekt) så hopper den hen på main.asp!
Men altså - det giver ingen mening at den gør det - for soegescript.asp er overhovedet ikke forbundet med main.asp...
Nej - når man skal videre til de ti næste så søger man jo ikke - dvs. et scriptet ikke modtaget et keyword; og når det ikke gør det, så redirect\'er den til main.asp!
Man kan man ikke lave et eller andet: IF query_string THEN ELSE strKEYWORD = Request(Trim..osv. osv.
Nu hjælper det lidt! Jeg har fjernet If Len(strKEYWORD) = 0 Then Response.Clear Response.Redirect(\"../grundsten/main.asp\") Else Og så kan man hoppe til næste resultat - så viser den lige pludselig at der er 4 sider med resultater og ikke kun 2...?
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.