![]() |
![]() |
--noobek-- |
![]()
Post
#1
|
Goście ![]() |
Witam!
Może kod: Kod function LoginExist($login){ global $pdo; $query = $pdo->prepare("select * from UZYTKOWNICY where LOGIN=':login'"); $query->bindParam(':login', $login, PDO::PARAM_STR); $result = $query->execute(); if($result == FALSE){ return false; } else{ return true; } } Problem w tym ze zawsze zwraca true... nie mam już sił próbowałem na milion sposobów. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
Spróbuj tak:
$query = $pdo->prepare("IF EXISTS(select * from UZYTKOWNICY where LOGIN=':login')SELECT 1 ELSE SELECT 0"); a dalej bez zmian. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
True jest zwracane jeżeli zapytanie zostało wykonane pomyślnie a nie jeżęli zwróciło jakiś wynik. Źle stosujesz tą metodę.
-------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
--noobek-- |
![]()
Post
#4
|
Goście ![]() |
Ok zgadzam się z tym, że tam było źle, ale probowalem też tak:
Kod function LoginExist($login){ global $pdo; $query = $pdo->prepare("select * from UZYTKOWNICY where LOGIN=':login'"); $query->bindParam(':login', $login, PDO::PARAM_STR); $result = $query->execute(); $result = $result -> fetch(); $result->closeCursor(); if($result){ unset($result); return TRUE; } else{ return FALSE; } } i dostaje: Kod Fatal error: Call to a member function fetch() on a non-object in /home/vol4/jcom.pl/jcom_10294194/htdocs/funkcje/core.php on line 49 Może to ma związek, że wyżej używam podobnej analogicznej funkcj ktora dziala: Kod function IloscPunktow($user)
{ global $pdo; $query = $pdo->prepare("select * from UZYTKOWNICY where LOGIN=':user'"); $query->bindParam(':user', $user, PDO::PARAM_STR); $result = $query->execute(); $ $result = $result -> fetch(); $points = $result['PUNKTY']; $result->closeCursor(); unset($result); return $points; } |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
-------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
--noobek-- |
![]()
Post
#6
|
Goście ![]() |
nadal:
Fatal error: Call to a member function columnCount() on a non-object in /home/vol4/jcom.pl/jcom_10294194/htdocs/funkcje/core.php on line 49 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
Może utwórz klasę pdo i przy każdym łączeniu z bazą danych odwołuj się do instancji klasy.
Być może global $pdo powoduje błędy,ale to tylko moje domysły ,jednakże z tego co czytałem nie zalecane jest używanie tejże metody. http://stackoverflow.com/questions/4696189...p-object-global |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
http://www.php.net/manual/en/pdo.prepared-statements.php - zwróć uwagę jak wstawia się placeholdery do zapytania.
|
|
|
--noobek-- |
![]()
Post
#9
|
Goście ![]() |
Dobrze mam placeholdery bo inna funkcja(podalem ja) dziala ok
|
|
|
--noobek-- |
![]()
Post
#10
|
Goście ![]() |
Kurcze spróbowałem wszystkiego co polecaliście i dalej nie działa...a nawet jak wróciłem do starych ustawień, nie działa to co wcześniej działało. Ma ktoś jeszcze jakieś pomysły?
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Nie działa Ci, bo źle używasz parametrów - nie powinny być one otoczone apostrofami. W tej chwili ':login' jest traktowane jako dosłowny tekst :login, a domyślam się, że nie masz takiego użytkownika.
|
|
|
--noobek-- |
![]()
Post
#12
|
Goście ![]() |
KOLEGO naucz się czytać! Pisałem, że próbowałem tak jak radziłeś i nie działa tez. I nie to jest bledem a to, że $result nie jest klasą, tak jakby przypisanie nie działoło, gdy uzywam
Kod global $pdo; a potem dawłem samo :user i to w ogole nie dziala.$query = $pdo -> prepare("select * from UZYTKOWNICY where LOGIN=':user'"); $query -> bindParam(':user', $user, PDO::PARAM_STR); $result = $query -> execute(); //tu jakby sie cos walilo [code] dla twojej wiadomosci: probowałem robić tak, że robiłem [code]$user="'".$user."'"; TAK SAMO PISALEM, że to co miałem wczesniej DZIALALO,(ta druga funkcja, a zrobione analogicznie), a teraz nie dziala ani to ani to. Wiec jak masz pisac pierdoly to się nie odzywaj. Ktos inny może wie o co kaman? |
|
|
--noobek-- |
![]()
Post
#13
|
Goście ![]() |
Btw twoj argument jest bez sensu, nawet jesli by szukalo uzytkownika o nazwie :user to by go nie znalazlo i by mi nic nie zwracalo i tak powinno to dzialac a nie rzucac bledami...
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Masz to zapisać jako:
-------------------- |
|
|
--noobek-- |
![]()
Post
#15
|
Goście ![]() |
Dobra uporałem się z tym sam.
Ale z was "miszczowie"... Tak powinno byc... Kod function LoginExist($login){
global $pdo; $query = $pdo -> prepare("select * from UZYTKOWNICY where LOGIN=':login'"); $query -> bindParam(':login', $login); $query -> execute(); $wynik =$query->fetch(); $query->closeCursor(); if($wynik){ return TRUE; } else{ return FALSE; } } |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
Miszczu odpowiedź powinna brzmieć według mnie tak:dzięki za chęci pomocy,ale poradziłem sobie z tym sam.
No i pomagaj takiemu. ![]() Ten post edytował Niktoś 3.03.2012, 19:26:11 |
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli chcesz znaleźć ilość rekordów które pasuje do zapytania, to rowCount, chyba że korzystasz z bazy danych która nie udostępnia w swoim API *_num_rows(), jak chociażby sqlite, to wtedy używasz fetch, i sprawdzasz czy zwraca false jeżeli nie będzie żadnego dopasowanego rekordu. BTW mistrzem to trzeba być żeby bawić się w gobale.. Ten post edytował by_ikar 3.03.2012, 19:32:26 |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
Cytat Ale z was "miszczowie"... Miszczem ,nie mistrzem ![]() Ten post edytował Niktoś 3.03.2012, 19:52:17 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 14:28 |