Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> PDO
gordonek
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 18.12.2008

Ostrzeżenie: (0%)
-----


Witam,

Mam problem z przełożeniem takiego zapytanie MySQL na PDO:

Kod
$result = mysql_query($sql);

if (mysql_num_rows($result) > 0) {
       $row = mysql_fetch_assoc($result);
       $next = $row['id'];
    }

Kombinuje jakoś z :
Kod
         if ($row = $stmt->fetch(PDO::FETCH_ASSOC) > 0) {
             $next = $row['id'];
          }

ale to niestety nie działa.
Będę wdzięczny za pomoc.
Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




http://pl.php.net/manual/pl/pdostatement.rowcount.php

edit: @down - racja: http://forum.php.pl/index.php?showtopic=72905

Ten post edytował erix 18.12.2008, 17:22:37
Go to the top of the page
+Quote Post
wrzasq
post
Post #3





Grupa: Zarejestrowani
Postów: 206
Pomógł: 18
Dołączył: 6.03.2006
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


nie. ta metoda nie zwraca ilosci wierszy z SELECT (a jak widać potem jest uzyte mysql_fetch_*, ktore mowi, ze pobieramy rekordy), a jedynie dla zapytan typu UPDATE/INSERT/DELETE ilosc wierszy "dotknietych" przez to zapytanie.

masz dwie opcje - albo najpierw stworzyc zapytanie z COUNT(), albo zliczac w PHP ilosc wierszy. wtedy mozesz albo uzyc count( $stmt->fetchAll() ) (ale to raczej malo wydajne), albo najpierw wyswietlac wszystkie wiersze i w miedzyczasie je zliczac. lub jesli chcesz po prostu miec jeden wiersz, to robisz raz $stmt->fetch() i sprawdzasz, czy zwrocona wartosc to false.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 06:47