Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zliczanie wynikow w PDO
michat34
post
Post #1





Grupa: Zarejestrowani
Postów: 200
Pomógł: 1
Dołączył: 4.08.2012

Ostrzeżenie: (10%)
X----


czesc, nie wiedziałem czy dac to tu czy do baz danych ale jak cos to niech mod przeniesie.

zastanawiałem sie jak zliczyc w PDO ilosc rekordow, czyli alternatywa dla num_rows. na angielskiej stronie znalazłem rozwiazanie:
  1. 1.<?php
  2. 2.$sQuery = "SELECT * FROM table";
  3. 3.
  4. 4.$rResult = $pdo->query($sQuery)->fetchAll();
  5. 5.echo count($rResult);
  6. 6.?>


co mysliscie o takim rozwiazaniu? mi sie wydaje dziwne, ale działa.. (nie do konca, bo gdy chce na koncu dac closeCursor() to wywala bład). ale moze macie jakies inne, lepsze?
Go to the top of the page
+Quote Post
markonix
post
Post #2





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


FetchAll tworzy całkiem sporą tablicę i na pewno nie będzie optymalnym rozwiązaniem.
Jak liczysz rekordy licz je za pomocą COUNT(*) w bazie.
Go to the top of the page
+Quote Post
BugsBunny
post
Post #3





Grupa: Zarejestrowani
Postów: 206
Pomógł: 4
Dołączył: 2.04.2005

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


Może tak?

  1. $sth = $dbh->prepare("SELECT name, colour FROM fruit");
  2.  
  3. /* Count the number of columns in the (non-existent) result set */
  4. $colcount = $sth->columnCount();
  5.  
  6. //fetch
  7. $sth->fetchAll();
Go to the top of the page
+Quote Post
szalek01
post
Post #4





Grupa: Zarejestrowani
Postów: 129
Pomógł: 17
Dołączył: 17.09.2012

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


markonix ma racje np:
  1. SELECT COUNT(`name`) FROM `fruit`


Ten post edytował szalek01 20.09.2012, 22:52:08
Go to the top of the page
+Quote Post
Piotrbaz
post
Post #5





Grupa: Zarejestrowani
Postów: 55
Pomógł: 2
Dołączył: 15.09.2012

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


Jest jeszcze rowCount()
W manualu niby napisane, że przy SELECT sprawia problemy, ale u mnie jak na razie lata ; >

Ten post edytował Piotrbaz 21.09.2012, 11:02:48
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: 22.08.2025 - 11:51