---
title: "Lägga till i databasen"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/183665-lägga-till-i-databasen"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "emton"
published: "2010-06-01T09:16:32.000Z"
updated: "2010-06-03T10:56:53.000Z"
replies: 5
views: 600
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/databaser-sql/183665-lägga-till-i-databasen"
---

# Lägga till i databasen

## #1 — emton, 2010-06-01T09:16Z

Nu har jag kört fast (igen). En ny person ska kunna lägga till sig i databasen men jag får inte till det. 
På en sida har jag formulär m.m 

```php
<?php
	$errors = false;

	if (isset($_POST['signup_submit'])) {
		if (!empty($_POST['username']) and !empty($_POST['password']) and $_POST['password'] == $_POST['password_2']) {
			$user = Users::getByID(Users::insert($_POST));

			Users::login($user['username'], $user['password']);

			header('Location: admin-start.php');
		}
		else {
			$errors = true;
		}
	}
?>

<div id="signup">
		<?php if ($errors) { ?>
		<p><strong>Något blev fel. Se till att alla fält är ifyllda.</strong></p>
	<?php } ?>

	
	
	<form method="post" action="">

		<p>
			<label>
				Användarnamn<br/>
				<input type="text" name="username"/>
			</label>
		</p>

		<p>
			<label>
				Lösenord<br/>
				<input type="password" name="password"/>
			</label>
		</p>

		<p>
			<label>
				Repetera lösenord<br/>
				<input type="password" name="password_2"/>
			</label>
		</p>

		<p>
			<input type="hidden" name="signup_submit"/>
			<input type="submit" value="Bli medlem"/>
		</p>

	</form>

</div>
```

På en annan sida har jag klassen users

```php
class Users {
public static function insert ($row) {
						$sql = "INSERT INTO users(username, password) VALUES(".$username.", ".$password.");";
     $sql_result = mysql_query($sql) or print(mysql_error());
    
     
	   $row = mysql_insert_id();
                
					return $row;
	}
}
```

Just nu får jag upp min error text "Något blev fel. Se till ....". Vad är det som är fel?

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

## #2 — emton, 2010-06-02T20:06Z

Löst

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

## #3 — @nders, 2010-06-03T05:20Z

... och då skriver man i tråden hur man löste problemet, och sedan markerar man det inlägget som lösning. 

Mvh

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

## #4 — emton, 2010-06-03T05:24Z

> **[@nders skrev:](https://www.webforum.nu/p/1506312)**
>
> ... och då skriver man i tråden hur man löste problemet, och sedan markerar man det inlägget som lösning. 
> 
> Mvh

Självklart, hade lite bråttom där.

```php
public static function insert ($row) {
			$sql = "INSERT INTO users(username, password) VALUES ('$row[username]', '$row[password]');";   
			$sql_result = mysql_query($sql) or print(mysql_error());       
			$id = mysql_insert_id();
			return $id;
		}
```

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

## #5 — nitro2k01, 2010-06-03T10:54Z

emton, du bör nog sanera din kod lite grann. Du har ett par uppenbara SQL-sårbarheter. Kör **all** data som ska in i databasen genom [mysql_real_escape_string](http://php.net/manual/en/function.mysql-real-escape-string.php). Detta gäller även data som du precis har plockat ut från databasen.

Du kan läsa om SQL-injektioner [på Wikipedia](http://en.wikipedia.org/wiki/SQL_injection).

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

## #6 — emton, 2010-06-03T10:56Z

> **[nitro2k01 skrev:](https://www.webforum.nu/p/1506332)**
>
> emton, du bör nog sanera din kod lite grann. Du har ett par uppenbara SQL-sårbarheter. Kör **all** data som ska in i databasen genom [mysql_real_escape_string](http://php.net/manual/en/function.mysql-real-escape-string.php). Detta gäller även data som du precis har plockat ut från databasen.
> 
> Du kan läsa om SQL-injektioner [på Wikipedia](http://en.wikipedia.org/wiki/SQL_injection).

Tack för påpekan. Jag ska fixa med det sen, just nu var det lite bråttom att få det att funka så jag ska justera lite småsaker sen, bla det.

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/183665-lägga-till-i-databasen
