---
title: "fel i kod sökfunktion"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/173990-fel-i-kod-sökfunktion"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Eddan"
published: "2008-09-11T20:22:53.000Z"
updated: "2008-09-19T13:50:32.000Z"
replies: 2
views: 425
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/php/173990-fel-i-kod-sökfunktion"
---

# fel i kod sökfunktion

## #1 — Eddan, 2008-09-11T20:22Z

Kan nån säga vad det är fel och hjälpa mig att rätta till detta

```php
if (preg_match("/^07[0-9]+$/",$sok)){
$SQL1 = " WHERE mms.status='Aktiv' AND mnr = '$sok' AND (typ = 'image' OR typ = 'video')   GROUP BY mms.id ORDER BY `mms` . `tilllagd_tid` DESC";
$SQL2 = " FROM mms WHERE mms.status='Aktiv' AND mnr = '$sok' GROUP BY mms.id";
}else if ($sok  != ""){
$SQL1 = " WHERE mms.status='Aktiv' AND mms.id = '$sok' AND (typ = 'image' OR typ = 'video')   GROUP BY mms.id ORDER BY `mms` . `tilllagd_tid` DESC";
$SQL2 = " FROM mms WHERE mms.status='Aktiv' AND mms.id = '$sok' GROUP BY mms.id";
}else if ($sok  = ""){
$SQL1 = " WHERE mms.status='Aktiv' AND mms.subject = '$sok' AND (typ = 'image' OR typ = 'video')   GROUP BY mms.id ORDER BY `mms` . `tilllagd_tid` DESC";
$SQL2 = " FROM mms WHERE mms.status='Aktiv' AND mms.subject = '$sok' GROUP BY mms.id";
}else{
$SQL1 = " WHERE mms.status='Aktiv' AND (typ = 'image' OR typ = 'video') GROUP BY mms.id ORDER BY `mms` . `tilllagd_tid` DESC";
$SQL2 = " FROM mms WHERE mms.status='Aktiv' GROUP BY mms.id";
}
```

Detta ska göra att jag kan söka på mnr, subject eller id.... just nu kan jag bara söka på id och mnr och få träffar från db, men när jag söker efter subject så får jag ingen träff, fast jag vet att subject texten finns i databasen...

jag hajjar inte felet, till råga på allt så är jag nOOb på PHP:x

PROBLEMET LÖST

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

## #2 — The_Hulk, 2008-09-12T08:30Z

```php
}else if ($sok  = ""){
```

du har bara ett likhetstecken i den else if, du måste ha två.

har du bara ett likhetstecken så tilldelar du $sok det som står efter likhetstecknet.

Sen kollar du om söksträngen är tom och vill då hitta alla subject som är lika med $sok, verkar underligt.

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

## #3 — aasah, 2008-09-19T13:50Z

Du borde dessutom kolla om $sok överhuvudtaget är satt. Så en bättre variant vore att börja if-satsen med vad som ska hända om ingen alls skrev något i fältet:

```php
if (!isSet($sok)) {....}
//Övriga alternativ
elseif (  ) { }
... 
else{ }
```

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

---

Tråden på webben: https://www.webforum.nu/amne/php/173990-fel-i-kod-sökfunktion
