---
title: "Sök problem i access"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/153841-sök-problem-i-access"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Exploit"
published: "2006-11-16T16:19:43.000Z"
updated: "2006-11-20T05:17:45.000Z"
replies: 15
views: 423
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/153841-sök-problem-i-access"
---

# Sök problem i access

## #1 — Exploit, 2006-11-16T16:19Z

Hej vet att jag har tagit upp förut om mina sök problem men nu har ett nytt probbz uppstått...
nu kan man söka på vad som hellst eller inget alls så kommer alla mina länkar upp med i söklistan (Dom som har ord i key kolummen)

Detta är min kod på default.asp

```
              <form name="form1" method="post" target="iframe" action="sok.asp">
                <label>
                
                  <div align="left">
                    <INPUT TYPE="text" SIZE="20" NAME="sokord">
                    <br>
                    <input name="Submit" type="submit" submit ="SELECT * FROM lankar WHERE key & namn LIKE '%" value="S&ouml;k">
                  </div>
                  </label>
                </label>
            </form>
```

Detta är min kod i sok.asp

```
<!-- #include file = "adovbs.inc" -->
<HTML><link href="style.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.style3 {color: #FFFFFF; font-weight: bold; }
-->
</style>

<%
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("db/lankar.mdb")
Set RecSet = Server.CreateObject("ADODB.Recordset")

SQL = "SELECT * FROM lankar WHERE key & namn LIKE '%" & Request.Form("sokord")& "%'"

Set RS=Connect.Execute (SQL)

If RS.EOF then
     response.Write "Ingen träff"
End if

Do Until RS.EOF

%>

<style type="text/css">
<!--
.style3 {color: #FFFFFF; font-weight: bold; }
.style4 {color: #FFFFFF; font-weight: bold; }
.style4 {color: #FFFFFF; font-weight: bold; }
-->
</style>
<p>&nbsp;</p>
<TABLE border='0' width='361'>
  <tr><td width="107" rowspan="4"><img src="<%=RS("banner")%>" width="88" height="31" align="right"><br>
    <br>    <br>
</td>
    <td width="244"><a href="klick.asp?id=<%=RS("id")%>" target="_blank" onMouseOver="self.status='<%= RS("hemsida")%>';return true" onMouseOut="self.status=' ';return true"><%=RS("namn")%></a></td>
  </tr>
  <tr>
    <td><strong><font size="1" face="Verdana">(</font></strong><span class="style4"><font size="1" face="Verdana"><%=RS("klick")%></font> <font size="1" face="Verdana" class="style4">klick)</font></span></td>
  </tr>
  <tr>
    <td><%=RS("text")%></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
</TABLE>

<%
RS.MoveNext
LOOP
RS.Close
Connect.Close
%>

</HTML>
```

Permalänk: https://www.webforum.nu/p/153841

## #2 — WebbisNet, 2006-11-16T17:28Z

varför har du fortfarande sql i inputknappen?

börja med att ha
\<input name="Submit" type="submit" value="S&ouml;k"\>

Permalänk: https://www.webforum.nu/p/1899323

## #3 — Exploit, 2006-11-16T17:30Z

?? Förklara vart..... som sagt va jag är nybörjare..

Permalänk: https://www.webforum.nu/p/1899324

## #4 — Exploit, 2006-11-16T17:31Z

I den här ?

\[code}
SQL = "SELECT \* FROM lankar WHERE key & namn LIKE '%" & Request.Form("sokord")& "%'"

Permalänk: https://www.webforum.nu/p/1899325

## #5 — WebbisNet, 2006-11-16T17:39Z

> **Exploit skrev:**
>
> I den här ?
> 
> \[code}
> SQL = "SELECT \* FROM lankar WHERE key & namn LIKE '%" & Request.Form("sokord")& "%'"

I default.asp ska du inte ha sqlsatsen i input

i sok.asp ska det vara

```
<!-- #include file = "adovbs.inc" -->
<!--#include virtual = "conn.asp"-->
<HTML>
<HEAD><TITLE>din titel</TITLE>

<link href="style.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.style3 {color: #FFFFFF; font-weight: bold; }
-->
</style>
</HEAD>
<BODY>
<%
SQL = "SELECT * FROM lankar WHERE key & namn LIKE '%" & Request.Form("sokord")& "%'"

Set RS=Connect.Execute (SQL)

If RS.EOF then
     response.Write "Ingen träff"
Else
Do Until RS.EOF%>

<style type="text/css">
<!--
.style3 {color: #FFFFFF; font-weight: bold; }
.style4 {color: #FFFFFF; font-weight: bold; }
.style4 {color: #FFFFFF; font-weight: bold; }
-->
</style>
<p>&nbsp;</p>
<TABLE border='0' width='361'>
  <tr><td width="107" rowspan="4"><img src="<%=RS("banner")%>" width="88" height="31" align="right"><br>
    <br>    <br>
</td>
    <td width="244"><a href="klick.asp?id=<%=RS("id")%>" target="_blank" onMouseOver="self.status='<%= RS("hemsida")%>';return true" onMouseOut="self.status=' ';return true"><%=RS("namn")%></a></td>
  </tr>
  <tr>
    <td><strong><font size="1" face="Verdana">(</font></strong><span class="style4"><font size="1" face="Verdana"><%=RS("klick")%></font> <font size="1" face="Verdana" class="style4">klick)</font></span></td>
  </tr>
  <tr>
    <td><%=RS("text")%></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
</TABLE>

<%RS.MoveNext: LOOP
End If
RS.Close
Connect.Close%>
</BODY>
</HTML>
```

i conn.asp kan du ha

```
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("db/lankar.mdb")
Set RecSet = Server.CreateObject("ADODB.Recordset")
```

Permalänk: https://www.webforum.nu/p/1899329

## #6 — Exploit, 2006-11-17T17:29Z

Nu har jag gjort följande men det funkar endå INTE.
När jag trycker på sök knappen utan att ha fyllt i nått så listar den alla mina länkar från databasen????????

Permalänk: https://www.webforum.nu/p/1899644

## #7 — Exploit, 2006-11-17T17:32Z

Default.asp där knappen & sök rutan finns:

```
              <form name="form1" method="post" target="iframe" action="sok.asp">
                <label>
                
                  <div align="left">
                    <INPUT TYPE="text" SIZE="20" NAME="sokord">
                    <br>
                    <input name="Submit" type="submit" value="S&ouml;k">
                  </div>
                  </label>
                </label>
            </form>
```

I sok.asp

```
<!-- #include file = "adovbs.inc" -->
<!--#include virtual = "conn.asp"-->
<HTML><link href="style.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.style3 {color: #FFFFFF; font-weight: bold; }
-->
</style>

<%
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("db/lankar.mdb")
Set RecSet = Server.CreateObject("ADODB.Recordset")

SQL= "SELECT * FROM lankar WHERE key & namn LIKE '%" & Request.Form("sokord")& "%'"

Set RS=Connect.Execute (SQL)

If RS.EOF then
     response.Write "Ingen träff"
End if

Do Until RS.EOF

%>

<style type="text/css">
<!--
.style3 {color: #FFFFFF; font-weight: bold; }
.style4 {color: #FFFFFF; font-weight: bold; }
.style4 {color: #FFFFFF; font-weight: bold; }
-->
</style>
<p>&nbsp;</p>
<TABLE border='0' width='361'>
  <tr><td width="107"><img src="<%=RS("banner")%>" width="88" height="31" align="right"><br>
    <br>    <br>
</td>
    <td width="244"><a href="klick.asp?id=<%=RS("id")%>" target="_blank" onMouseOver="self.status='<%= RS("hemsida")%>';return true" onMouseOut="self.status=' ';return true"><%=RS("namn")%></a></td>
  </tr>
  <tr>
    <td width="107">&nbsp;</td>
    <td><strong><font size="1" face="Verdana">(</font></strong><span class="style4"><font size="1" face="Verdana"><%=RS("klick")%></font> <font size="1" face="Verdana" class="style4">klick) [ <%=RS("kat")%> ] </font></span></td>
  </tr>
  <tr>
    <td width="107">&nbsp;</td>
    <td><%=RS("text")%></td>
  </tr>
  <tr>
    <td width="107">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</TABLE>

<%
RS.MoveNext
LOOP
RS.Close
Connect.Close
%>

</HTML>
```

Och så i conn.asp

```
<%
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("db/lankar.mdb")
Set RecSet = Server.CreateObject("ADODB.Recordset")
%>
```

Permalänk: https://www.webforum.nu/p/1899645

## #8 — Peter S, 2006-11-17T17:33Z

Vad vill du åstadkomma med det rödmarkerade nedan?

```
SELECT * FROM lankar WHERE [red]key & namn[/red] LIKE '%" & Request.Form("sokord")& "%'
```

Vill du söka i key-kolumnen bör du ta bort '& namn'.

Permalänk: https://www.webforum.nu/p/1899646

## #9 — Exploit, 2006-11-17T17:36Z

tog bort detta så nur står det bara key men men det funkar endå inte som jag vill att det ska göra...

Permalänk: https://www.webforum.nu/p/1899650

## #10 — WebbisNet, 2006-11-17T17:37Z

varSokOrd=Request.Form("sokord")
SQL = "SELECT \* FROM lankar WHERE key & namn LIKE '%" & varSokord & "%'"

Detta är att rekommendera och skydda dig mot SQL-injections med

Så här ser min sök ut på frisök
set RS = objConn.Execute("Select \* From tblUsers where username LIKE '%" & varUsername & "%' and inloggad = "& varChk &" ORDER BY vip = 1")

Permalänk: https://www.webforum.nu/p/1899651

## #11 — Exploit, 2006-11-17T17:39Z

oki.
gjorde detta. men kan man inte "blockera" sök knappen så att man måste skriva i nått för att söka o har man inte skrivit nått så händer det inget?

Permalänk: https://www.webforum.nu/p/1899653

## #12 — WebbisNet, 2006-11-17T17:41Z

> **Exploit skrev:**
>
> oki.
> gjorde detta. men kan man inte "blockera" sök knappen så att man måste skriva i nått för att söka o har man inte skrivit nått så händer det inget?

Pseudokod

OM textrutevärde = "" SÅ
visa inget
ANNARS 
Visa Sökknapp
SLUT OM

Smidigast är att ha det när man klickar på knappen som visar felmeddelande om att inget är inskrivet

Permalänk: https://www.webforum.nu/p/1899654

## #13 — Exploit, 2006-11-17T17:45Z

jaja skit samma fattar endå inget förutom att det ska vara en if sats jag får leta vidare på nätet...

Permalänk: https://www.webforum.nu/p/1899656

## #14 — Peter S, 2006-11-17T17:51Z

Vad får du med

```
<!-- #include file = "adovbs.inc" -->
<!--#include virtual = "conn.asp"-->
<HTML><link href="style.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.style3 {color: #FFFFFF; font-weight: bold; }
-->
</style>

<%
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("db/lankar.mdb")
Set RecSet = Server.CreateObject("ADODB.Recordset")

sokord = trim(Request.Form("sokord") & "")
if sokord = "" then
  response.write "ange sökord"
  response.end
end if
SQL= "SELECT * FROM lankar WHERE key LIKE '%" & sokord & "%'"

Set RS=Connect.Execute (SQL)

If RS.EOF then
     response.Write "Ingen träff"
End if

Do Until RS.EOF

%>

<style type="text/css">
<!--
.style3 {color: #FFFFFF; font-weight: bold; }
.style4 {color: #FFFFFF; font-weight: bold; }
.style4 {color: #FFFFFF; font-weight: bold; }
-->
</style>
<p>&nbsp;</p>
<TABLE border='0' width='361'>
  <tr><td width="107"><img src="<%=RS("banner")%>" width="88" height="31" align="right"><br>
    <br>    <br>
</td>
    <td width="244"><a href="klick.asp?id=<%=RS("id")%>" target="_blank" onMouseOver="self.status='<%= RS("hemsida")%>';return true" onMouseOut="self.status=' ';return true"><%=RS("namn")%></a></td>
  </tr>
  <tr>
    <td width="107">&nbsp;</td>
    <td><strong><font size="1" face="Verdana">(</font></strong><span class="style4"><font size="1" face="Verdana"><%=RS("klick")%></font> <font size="1" face="Verdana" class="style4">klick) [ <%=RS("kat")%> ] </font></span></td>
  </tr>
  <tr>
    <td width="107">&nbsp;</td>
    <td><%=RS("text")%></td>
  </tr>
  <tr>
    <td width="107">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</TABLE>

<%
RS.MoveNext
LOOP
RS.Close
Connect.Close
%>

</HTML>
```

? Har du en äldre version av Access kan du testa att byta '%' mot '\*'.

Permalänk: https://www.webforum.nu/p/1899657

## #15 — Exploit, 2006-11-17T17:54Z

Jag har Microsoft Offfice Access 2007 (Beta)

Permalänk: https://www.webforum.nu/p/1899658

## #16 — @nders, 2006-11-20T05:17Z

... och funkade inte Peters kod?

Du borde också flytta ut css-koden och tabellhuvud och -slut utanför loopen.

Permalänk: https://www.webforum.nu/p/1900222

---

Tråden på webben: https://www.webforum.nu/amne/asp/153841-sök-problem-i-access
