![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 9.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Próbuje napisać metodę insert. Mam problem z bindParam.
Oto fragment kodu metody:
Wywala ostrzeżenie: Warning: PDOStatement::execute() [pdostatement.execute]: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in... Nie wiem co jest nie tak z paramName, bo chyba o to krzyczy? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 49 Dołączył: 12.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Moim zdaniem $bindParamName nie może zawierać się w podwójnych cudzysłowach, spróbój z pojedyńczymi lub bez.
Nie widzę, abyś tu deklarował $paramName, więc jak nie zadeklarowałeś to wali errory. -------------------- Pozdrawiam,
mlawnik Cytat(nospor) Jedzmy gówno.... miliony much nie może się przecież mylić |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 9.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Moim zdaniem $bindParamName nie może zawierać się w podwójnych cudzysłowach, spróbój z pojedyńczymi lub bez. Nie widzę, abyś tu deklarował $paramName, więc jak nie zadeklarowałeś to wali errory. Z pojedynczym też nie działa :/ Nie mam żadnych komunikatów odnośnie niezadeklarowanego $paramName. Nawet wcześniej ustawiałem wartość początkową ale nic to nie zmieniło. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 49 Dołączył: 12.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
http://stackoverflow.com/questions/1305381...was-not-defined
http://forums.devshed.com/php-development-...ned-942635.html Sprawdź podane rozwiązania, generalnie chodzi o niezgadzającą się liczbę $bindParName i $paramName (zmień nazwę na paramValue, bardziej opisowa i adekwatna do zawartości) Ten post edytował mlawnik 12.08.2013, 23:53:05 -------------------- Pozdrawiam,
mlawnik Cytat(nospor) Jedzmy gówno.... miliony much nie może się przecież mylić |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 9.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
http://stackoverflow.com/questions/1305381...was-not-defined http://forums.devshed.com/php-development-...ned-942635.html Sprawdź podane rozwiązania, generalnie chodzi o niezgadzającą się liczbę $bindParName i $paramName (zmień nazwę na paramValue, bardziej opisowa i adekwatna do zawartości) Nie występuje u mnie żaden z powyższych błędów (liczba parametrów po lewej i prawej stronie VALUES zgadza się. Nazwy po prawej stronie zgadzają się z nazwami w bindParam i bindValues) :/ |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Z pojedynczym też nie działa :/ Nazwa parametrow ma byc bez zadanych pojedynczych czy podwojnych cudzyslowi.... skad zes to wymyslil ze ma tam byc cos takiego? Nazwa parametru skladak sie z dwukropka i nazwy - nic wiecej.Poza tym twoj kod to jakas sieczka, ktorej nie idzie zrozumiec. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 9.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Nazwa parametrow ma byc bez zadanych pojedynczych czy podwojnych cudzyslowi.... skad zes to wymyslil ze ma tam byc cos takiego? Nazwa parametru skladak sie z dwukropka i nazwy - nic wiecej. Poza tym twoj kod to jakas sieczka, ktorej nie idzie zrozumiec. Przykład z manuala:
Jak widać pierwszy parametr metody bindParam (czyli nazwa parametru) jest podany w apostrofach. Czego konkretnie nie rozumiesz? Chętnie wytłumaczę |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
@Pjotrek80: Twój problem jest bardziej fundamentalny. Nie odróżniasz składni języka, która wymaga by tekst ujęty był w cudzysłowie bądź apostrofach, od składni SQL-a, który tak się składa że jest umieszczany jako... zwykły tekst. Chociaż domyślam się, że rozumiesz różnicę pomiędzy poniższymi zapisami?
Ten post edytował Crozin 13.08.2013, 09:32:56 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Jak widać pierwszy parametr metody bindParam (czyli nazwa parametru) jest podany w apostrofach. ![]() Rety... bierzesz sie za powazniejsze rzeczy a masz totalny brak podstawowej wiedzy i nie odrozniasz co to zapisu tekstu bezposredni a zapis tekstu ze zmiennej.... Nie chce mi sie takiej podstawy wyjasniac wiec uwierz na slowo: twoje nazwy parametrow maja byc bez apostrofow. Kapisz? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 9.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
![]() Rety... bierzesz sie za powazniejsze rzeczy a masz totalny brak podstawowej wiedzy i nie odrozniasz co to zapisu tekstu bezposredni a zapis tekstu ze zmiennej.... Nie chce mi sie takiej podstawy wyjasniac wiec uwierz na slowo: twoje nazwy parametrow maja byc bez apostrofow. Kapisz? Nie mam teraz jak tego sprawdzić ale pewnie masz rację. Na razie dzięki za pomoc. @Pjotrek80: Twój problem jest bardziej fundamentalny. Nie odróżniasz składni języka, która wymaga by tekst ujęty był w cudzysłowie bądź apostrofach, od składni SQL-a, który tak się składa że jest umieszczany jako... zwykły tekst. Chociaż domyślam się, że rozumiesz różnicę pomiędzy poniższymi zapisami? Już chyba rozumiem różnicę ![]() ![]() Rety... bierzesz sie za powazniejsze rzeczy a masz totalny brak podstawowej wiedzy i nie odrozniasz co to zapisu tekstu bezposredni a zapis tekstu ze zmiennej.... Nie chce mi sie takiej podstawy wyjasniac wiec uwierz na slowo: twoje nazwy parametrow maja byc bez apostrofow. Kapisz? Sprawdziłem bez apostrofów/cudzysłowu, nie działa :/ Pewnie to jakiś totalnie podstawowy błąd którego nawet w dziale "przedszkole" nie wypada analizować :/ |
|
|
![]()
Post
#11
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Blad masz nadal ten sam?? Dokladnie ten sam??
Pokaz kod po zmianach -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 9.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Blad masz nadal ten sam?? Dokladnie ten sam?? Pokaz kod po zmianach
Różni się tylko tym, że $bindParName nie jest brane w apostrof. Błąd dalej jest taki sam: Warning: PDOStatement::execute() [pdostatement.execute]: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in... Ten post edytował Pjotrek80 13.08.2013, 17:04:09 |
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Ciapki brales w dwoch miejscach a zmiany pokazales tylko w jednym..... Pokaz caly kod po zmianach - caly.
Wskaz w kodzie dokladnie linie, ktorej dotyczy blad z komunikatu bledu. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 9.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Ciapki brales w dwoch miejscach a zmiany pokazales tylko w jednym..... Pokaz caly kod po zmianach - caly. Wskaz w kodzie dokladnie linie, ktorej dotyczy blad z komunikatu bledu.
|
|
|
![]()
Post
#15
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No i super
$stmt->bindParam($bindParName, $paramName); Nigdzie nie widze zdefiniowanej zmiennej $paramName edit: a nie, jest, tutaj $paramName = $param; Ino ze to jest juz po jej wykorzystaniu.... kolejnosc wykonywania kodu tez by sie przydalo opanowac -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 9.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
No i super $stmt->bindParam($bindParName, $paramName); Nigdzie nie widze zdefiniowanej zmiennej $paramName Definiowałem ją, ale też to nic nie zmieniło :/ Definiowałem ją, ale też to nic nie zmieniło :/ Poszło ![]() Zadeklarowałem $bindParName i $bindValName i poszło. Jasna cholera... Jeszcze raz dzięki za zaangażowanie. |
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Najprawdopodobniej w SQL-u masz :paramert_abc, a bindujesz :parametr_def. Sprawdź sobie finalną treść zapytania oraz listę parametrów jakie do niego podajesz.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 18.07.2025 - 02:40 |