---
title: "söka på id eller keyword"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/157689-söka-på-id-eller-keyword"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "WebbisNet"
published: "2007-03-01T13:15:01.000Z"
updated: "2007-03-01T22:19:28.000Z"
replies: 28
views: 917
page: 1
pages: 2
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/databaser-sql/157689-söka-på-id-eller-keyword"
---

# söka på id eller keyword

_Sida 1 av 2._

## #1 — WebbisNet, 2007-03-01T13:15Z

fortsättning på förra tråden

kan nu söka på keyword men då funkar inte id-sökningen

```
id=request.form("id")
keyword=request.form("keyword")
Set user=objConn.Execute("SELECT * FROM tblUsers INNER JOIN tblUsers_guestbook ON tblUsers.userID = tblUsers_guestbook.fromUser where fromUser='"& id &"' and not pprivate=1 or gbMessage LIKE '%"& keyword &"%' order by gbDate desc limit 50")%>
```

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

## #2 — voigtann1, 2007-03-01T13:22Z

```
... = tblUsers_guestbook.fromUser where [b]tblUsers_guestbook.[/b]fromUser='"& id &"'...
```

Skall man inte skriva så?
Andra frågor: Är fromUser en sträng i din databas, är ID något från request.form("id")?

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

## #3 — WebbisNet, 2007-03-01T13:27Z

> **voigtann1 skrev:**
>
> ```
> ... = tblUsers_guestbook.fromUser where [b]tblUsers_guestbook.[/b]fromUser='"& id &"'...
> ```
>
> Skall man inte skriva så?
> Andra frågor: Är fromUser en sträng i din databas, är ID något från request.form("id")?

fromUser är INT men det funkar inte utan '' i koden och det verkar göra att jag inte kan söka på variabeln id som är fromUser i DB

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

## #4 — voigtann1, 2007-03-01T13:28Z

```
id= 0 + cint(request.form("id"))
```

Vi måste göra om request.form (som blir en sträng) till en integer...

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

## #5 — WebbisNet, 2007-03-01T13:31Z

> **voigtann1 skrev:**
>
> ```
> id= 0 + cint(request.form("id"))
> ```

```
id= 0 + cint(request.form("id"))
keyword=request.form("keyword")
Set user=objConn.Execute("SELECT * FROM tblUsers INNER JOIN tblUsers_guestbook ON tblUsers.userID = tblUsers_guestbook.fromUser where fromUser="& id &" and not pprivate=1 or gbMessage LIKE '%"& keyword &"%' order by gbDate desc limit 50")
```

funkar inte heller

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

## #6 — voigtann1, 2007-03-01T13:38Z

vad ska din SQL sträng "träffa"? Allt som INTE är pprivate=1 eller och hämta ut alla poster som den hittar med keyword? Isåfall så känns det som det är något som fattas i din SQL...

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

## #7 — WebbisNet, 2007-03-01T13:43Z

den ska hämta allt som inte är pprivate=1 och alla träffar på det ID man söker på ELLER alla användare med det sökord som anges

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

## #8 — voigtann1, 2007-03-01T13:45Z

```
SELECT * FROM tblUsers INNER JOIN tblUsers_guestbook ON tblUsers.userID = tblUsers_guestbook.fromUser where (fromUser="& id &" and not pprivate=1) or (gbMessage LIKE '%"& keyword &"%') order by gbDate desc limit 50
```

 så eller?

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

## #9 — WebbisNet, 2007-03-01T13:50Z

> **voigtann1 skrev:**
>
> ```
> SELECT * FROM tblUsers INNER JOIN tblUsers_guestbook ON tblUsers.userID = tblUsers_guestbook.fromUser where (fromUser="& id &" and not pprivate=1) or (gbMessage LIKE '%"& keyword &"%') order by gbDate desc limit 50
> ```
>
>  så eller?

Microsoft OLE DB Provider for ODBC Drivers error '80040e14' 

\[MySQL\]\[ODBC 3.51 Driver\]\[mysqld-4.0.25-max\]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'and not pprivate=1) or (gbMessage LIKE '%%') order by gbDate de

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

## #10 — voigtann1, 2007-03-01T13:53Z

Är nog för att du inte angivit något keyword... Skall man kunna välja att inte söka på keyword och userID? Måste man fylla i båda uppgifterna på din sida för att få någon resultat?

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

## #11 — WebbisNet, 2007-03-01T13:58Z

ena eller det andra

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

## #12 — voigtann1, 2007-03-01T14:00Z

men inte båda?

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

## #13 — WebbisNet, 2007-03-01T14:10Z

inte båda, därför har jag OR och inte AND

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

## #14 — voigtann1, 2007-03-01T14:13Z

du får nog lägga in en

```
if len(keyword) = 0 then keyword = "wenjfknsduvinfudfinbuierwofnvuilnruvglfn"
```

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

## #15 — WebbisNet, 2007-03-01T14:34Z

```
Set user=objConn.Execute("SELECT * FROM tblUsers INNER JOIN tblUsers_guestbook ON tblUsers.userID = tblUsers_guestbook.fromUser where fromUser='"& id &"' and not pprivate=1 order by gbDate desc limit 50")
```

funkar bra men inte

```
if not keyword="" then
Set user=objConn.Execute("SELECT * FROM tblUsers INNER JOIN tblUsers_guestbook ON tblUsers.userID = tblUsers_guestbook.fromUser where fromUser="& id &" and not pprivate=1 or gbMessage LIKE '%"& keyword &"%' order by gbDate desc limit 50")
end if
```

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

## #16 — @nders, 2007-03-01T14:36Z

Och vad menar du med "fungerar inte"?

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

## #17 — WebbisNet, 2007-03-01T14:41Z

får inga träffar eller bara felmeddelande

Microsoft OLE DB Provider for ODBC Drivers error '80040e14' 

\[MySQL\]\[ODBC 3.51 Driver\]\[mysqld-4.0.25-max\]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'and not pprivate=1 or gbMessage LIKE '%tanke%' order by gbDate

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

## #18 — @nders, 2007-03-01T14:45Z

~~Tre~~Två frågor då:

~~Varför ger du oss inte felmeddelandet?~~
Varför har du apostrofer runt fromuser-värdet i den första frågan, men inte i den andra?
Varför skriver du inte ut den färdiga SQL-frågan så det blir lättare att felsöka?

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

## #19 — WebbisNet, 2007-03-01T15:00Z

med 

```
<%id = request.form("id")
keyword=request.form("keyword")
if not keyword="" or not id="" then
Set user=objConn.Execute("SELECT * FROM tblUsers INNER JOIN tblUsers_guestbook ON tblUsers.userID = tblUsers_guestbook.fromUser where fromUser='"& id &"' and not pprivate=1 or gbMessage LIKE '%"& keyword &"%' order by gbDate desc limit 50")
end if%>
```

fungerar sökning på keyword men när jag söker på id så visas alla senaste 50 inlägg från alla användare och inte senaste 50 från den som har id-numret

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

## #20 — @nders, 2007-03-01T15:03Z

...

> Varför skriver du inte ut den färdiga SQL-frågan så det blir lättare att felsöka?

Dessutom efterlyser jag fortfarande parentser för att gruppa dina villkor.

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/157689-söka-på-id-eller-keyword  
Nästa sida: https://www.webforum.nu/amne/databaser-sql/157689-söka-på-id-eller-keyword/page2.md
