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
wrzasq
post
Post #2





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

Posty w temacie
- gordonek   PDO   18.12.2008, 15:16:13
- - erix   http://pl.php.net/manual/pl/pdostatement.rowcount....   18.12.2008, 15:42:59
- - wrzasq   nie. ta metoda nie zwraca ilosci wierszy z SELECT ...   18.12.2008, 16:44:26


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: 4.10.2025 - 03:26