---
title: "Märlligt fel."
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/148245-märlligt-fel"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "UrMe"
published: "2006-06-20T06:54:48.000Z"
updated: "2006-06-20T08:50:56.000Z"
replies: 1
views: 258
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/148245-märlligt-fel"
---

# Märlligt fel.

## #1 — UrMe, 2006-06-20T06:54Z

Jag kör en Access databas med PHP, allting fungerar perfekt, förutom detta script när jag försöker lägga in något i databasen. Scriptet fungerar på ena servern jag installerat, men inte på den andra.

Felmeddelandet blir detta:

```php
Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][Drivrutin för ODBC Microsoft Access] Operationen måste använda en fråga som kan uppdateras., SQL state S1000 in SQLExecDirect in C:\wwwroot\mymovies\classes\odbc.class.php on line 25
```

Koden

```php
<?php
if(IsSet($_POST["done"]) AND $_POST["done"] == "yes")
{
	include "classes/odbc.class.php";
	$trailer = new DB("trailer");
	$trailer->connect();
	$movietrailer = "INSERT INTO trailers (movieID, trailerlink, trailertype, width, height) VALUES('".$_POST["tid"]."','".$_POST["tlink"]."','".$_POST["ttype"]."','".$_POST["width"]."','".$_POST["height"]."')";
	$trailer->queryDB($movietrailer);
	echo "done<br>";
	echo $movietrailer;
}
?>

<form name="searchdone" action="addtrailer.php" method="post">
movie id: <input type="text" name="tid"><br>
trailer link: <input type="text" name="tlink"><br>
trailer type: <input type="text" name="ttype"><br>
width: <input type="text" name="width"><br>
height: <input type="text" name="height"><br>
<input type="hidden" name="done" value="yes">
<input type="submit" value="add"><br>
</form>
```

En del av klassen ser ut så här:

```php
	public function connect ()
	{
		$this->odbc_dbc = odbc_connect($this->database, DB_USER, DB_PASS);

	}
  
    public function queryDB($sql_query)
    {
        $this->odbc_QueryReturn = odbc_exec($this->odbc_dbc, $sql_query) or die("<br><br>Invalid Query");
		return $this->odbc_QueryReturn;
	}
```

Varför fungerar det inte på ena servern men fungerar utmärkt på den andra? jag blir helt snurrig :) Är inga problem att göra en select från databasen där jag får felmeddelandet när jag kör en insert.

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

## #2 — UrMe, 2006-06-20T08:50Z

Ah ok jag löste det, man var tvungen att ge "Users" skrivrättigheter på .mdb filen.

Hittade denna topic: 
<http://www.phpbb.com/phpBB/viewtopic.php?t=66572>

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

---

Tråden på webben: https://www.webforum.nu/amne/php/148245-märlligt-fel
