---
title: "Fel antal variabler i prepared statments"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/192828-fel-antal-variabler-i-prepared-statments"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Jester73"
published: "2015-12-07T23:07:01.000Z"
updated: "2015-12-08T11:34:39.000Z"
replies: 3
views: 659
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/192828-fel-antal-variabler-i-prepared-statments"
---

# Fel antal variabler i prepared statments

## #1 — Jester73, 2015-12-07T23:07Z

Hej

Får följande felmeddelande

> Warning: mysqli_stmt::bind_param(): Number of variables doesn't match number of parameters in prepared statement in /share/MD0_DATA/Web/devsoladmin/include/dbops.php on line 41

när jag kör följande fråga

```php
$sql = "SELECT K.Kund_ID, K.Namn, K.Kundnr FROM tblKund AS K WHERE K.Kund_ID NOT IN (SELECT KundID FROM tblLBokf WHERE Period>='?') AND K.Avslutad = FALSE ORDER BY K.Kundnr";
        $resultat=$dbops->dbselect($sql,"s","2015-12-07");
```

funktionen i dbops ser ut så här

```php
function dbselect($sql,$paratype,$params){
if(!$stmt=self::$connect->prepare($sql)){
            die('Query error: ' . self::$connect->errno . '-' . self::$connect->error);
        }
        $stmt->bind_param($paratype,$params);
        $stmt->execute();
        $result=$stmt->get_result();
        
      
        if ($result->num_rows == 1) {    
            return $result->fetch_assoc();
        }
        elseif($result->num_rows > 1){
            return $result->fetch_all(MYSQLI_ASSOC);
        }
        else {
            return $result;
        }
        $result->free();
```

jag har ju bara 1 variabel och den är en sträng så varför stämmer det inte?
Lär ju vara ett litet komma jag glömt någonstans :birp

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

## #2 — metalboy, 2015-12-07T23:48Z

Ta bort apostroferna runt frågetecknet i din SQL-fråga.

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

## #3 — Jester73, 2015-12-08T10:03Z

:D
Tackar, funkar fint.
Lite ologiskt då jag var tvungen att sätta dem inom ' om jag körde frågan på traditionellt sätt.

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

## #4 — metalboy, 2015-12-08T11:34Z

När du kör prepared statements ska du inte använda apostrofer, det gör också att du slipper oroa dig för SQL-injections. Mysqli/PDO sköter det åt dig.

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

---

Tråden på webben: https://www.webforum.nu/amne/php/192828-fel-antal-variabler-i-prepared-statments
