• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Błąd przy zapytaniu do bazy

Object Storage Arubacloud
0 głosów
130 wizyt
pytanie zadane 8 lipca 2022 w PHP przez mat19 Obywatel (1,580 p.)

Cześć! Nie wiem czemu ale wyskakuje mi taki błąd  Invalid parameter number: number of bound variables does not match number of tokens in. Próbuję znalesc błąd ale, nie wiem gdzie jest. Będę wdzieczny jesli ktos pomoze wskazac mi błąd.

public function UpdateFriendStatus(int $id, int $sessionId): void
    {
        $query = $this->pdo->prepare("UPDATE friend set status = 'znajomy' where request_from_id = :id and request_to_id = :session_id or request_from_id = :session_id and request_to_id = :id");
        $query->bindParam(':session_id',$sessionId, PDO::PARAM_INT);
        $query->bindParam(':get_id',$id, PDO::PARAM_STR);
        $query->execute();

    }

 

2 odpowiedzi

+1 głos
odpowiedź 8 lipca 2022 przez wizarddos Nałogowiec (25,930 p.)
edycja 8 lipca 2022 przez wizarddos
Bindujesz jedynie session_id oraz get_id a nigdzie nie ma zbindowanego id
komentarz 8 lipca 2022 przez wizarddos Nałogowiec (25,930 p.)
Przy okazji zamiast bindowač wszystko po kolei możesz zbindować wszystko na raz dodając wszystkie wartosci do tablicy i przekazując jako 2 parametr dla exexute()
0 głosów
odpowiedź 9 lipca 2022 przez VBService Ekspert (253,100 p.)
edycja 9 lipca 2022 przez VBService

W zapytaniu sql używasz nazwy parametru :id a przy bindowaniu :get_id

 

@wizarddos

możesz zbindować wszystko na raz dodając wszystkie wartosci do tablicy

public function UpdateFriendStatus(int $id, int $sessionId): void
{
    $query = $this->pdo->prepare("UPDATE friend SET status = 'znajomy' WHERE request_from_id = :id and request_to_id = :session_id or request_from_id = :session_id and request_to_id = :id");
    $query->execute([':session_id' => $sessionId, ':id' => $id]); 
}

 

PDOStatement ]

Podobne pytania

0 głosów
2 odpowiedzi 179 wizyt
–1 głos
1 odpowiedź 327 wizyt
pytanie zadane 14 czerwca 2017 w PHP przez Robert Ziemniak Nowicjusz (160 p.)
+2 głosów
1 odpowiedź 295 wizyt

92,555 zapytań

141,403 odpowiedzi

319,557 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...