---
title: "Söka/lägga till i DB"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/72462-söka-lägga-till-i-db"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "web00132"
published: "2003-03-28T14:30:14.000Z"
updated: "2003-03-28T15:43:48.000Z"
replies: 8
views: 247
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/72462-söka-lägga-till-i-db"
---

# Söka/lägga till i DB

## #1 — web00132, 2003-03-28T14:30Z

Jag vill helt enkelt kolla om ett visst värde finns i min MySQL-databas. Finns inte värdet ska det skrivas till db:n, annars skickas man vidare. Har gjort så här:

```
$open2 = mysql_connect("adress", "blabla", "blabla");
$sql = mysql_db_query("db", "SELECT address FROM table");

while ($row = mysql_fetch_array($sql))
{
	if ($row['address'] == $HTTP_POST_VARS[email])
	{
		mysql_close($open2);
		header("location: mail.php");
	}
}

$open = mysql_connect("adress", "blabla", "blabla");
$data = mysql_db_query("db", "INSERT INTO table (address) VALUES ('$HTTP_POST_VARS[email]');");
mysql_close($open);
header("location: mail.php?action=insertsuccess");
```

 Det är säkert jättefult skrivet, det fungerar ju inte heller. Det som händer är att värdet läggs till även fast det finns i db:n.

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

## #2 — Bäckman, 2003-03-28T14:50Z

Jag hade gjort något sånt här.

```php

$sql = "SELECT address FROM table WHERE address = '{$_POST["email"]}'"

$result = mysql_query($sql);

if (mysql_result($result, 0) > 0) {

header("location: mail.php");

} else {

$sql = "INSERT INTO table (address) values('{$_POST["email"]}')";
mysql_query($sql);
header("location: mail.php?action=insertsuccess");
}
```

Så du kollar om du får några träffar från den första frågan. Om du inte får det så finns ju inte adressen i databasen, o då kör du in den. Om den redan finns så skickas du vidare. Hoppas det hjälpte...

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

## #3 — web00132, 2003-03-28T15:05Z

Tack för hjälpen, men det funkar inte. Det blir fel på:

```
if (mysql_result($result, 0) > 0)
```

 Fel:Supplied argument is not a valid MySQL result resource

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

## #4 — Bäckman, 2003-03-28T15:10Z

testa

```php
if (mysql_result($result) > 0) {
```

Asså ta bort nollan i parentesen

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

## #5 — web00132, 2003-03-28T15:14Z

Då blev det
Wrong parameter count for mysql_result()

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

## #6 — Bäckman, 2003-03-28T15:16Z

Hah, vad sysslar jag med egentligen.

```php
$sql = "SELECT address FROM table WHERE address = '{$_POST["email"]}'"

$result = mysql_query($sql);

if (mysql_num_rows($result) > 0) {

header("location: mail.php");

} else {

$sql = "INSERT INTO table (address) values('{$_POST["email"]}')";
mysql_query($sql);
header("location: mail.php?action=insertsuccess");
}
```

Kolla på den felande raden nu. :)

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

## #7 — web00132, 2003-03-28T15:24Z

Nope,
Supplied argument is not a valid MySQL result resource
på samma rad.

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

## #8 — Bäckman, 2003-03-28T15:32Z

```php
$open2 = mysql_connect("adress", "blabla", "blabla");
$sql = mysql_db_query("db", "SELECT address FROM table WHERE address = '{$_POST["address"]}'");

if (mysql_num_rows($sql) > 0)
{
mysql_close($open2);
header("location: mail.php");
} else {

$open = mysql_connect("adress", "blabla", "blabla");
$data = mysql_db_query("db", "INSERT INTO table (address) VALUES ('$HTTP_POST_VARS[email]');");
mysql_close($open);
header("location: mail.php?action=insertsuccess");
}
```

Såhär då?  :l

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

## #9 — web00132, 2003-03-28T15:43Z

Sådärja! Inte lika snygg kod som innan men den fungerar perfekt! Tack ska du ha  :bire

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

---

Tråden på webben: https://www.webforum.nu/amne/php/72462-söka-lägga-till-i-db
