Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PDO] problemy z nextRowset(), problemy z nextRowset()
rubinek
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 21.03.2005

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


Mam nastepujacy kawalek kodu wziety z dokumentacji:
  1. <?php
  2. $sql = 'CALL multiple_rowsets()';
  3. $stmt = $conn->query($sql);
  4. $i = 1;
  5. do {
  6. $rowset = $stmt->fetch(PDO::FETCH_NUM);
  7. if ($rowset) {
  8. printResultSet($rowset, $i);
  9. }
  10. $i++;
  11. } while ($stmt->nextRowset());
  12. ?>

na jego podstawie zrobilem sobie biblioteke do obslugi multirowsetow w procedurach na mysql'u.
No i tu mam problem.
O ile na lokalnym serwerze chodzi mi wszystko ok, to jak przegram na serwer az wszystko sie wywala. Znaczy sie nie wszystko a tylko na lini
  1. <?php
  2. while ($stmt->nextRowset());
  3. ?>

wyglada na to ze serwer w ich konfiguracji nie obsluguje multirowset'ow (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Konfiguracja serwera na localhosci
platforma: Mac
php 5.2.5
mysql 5.0.41

az.
php. 5.2.5
mysql 5.1.23-rc

Szukalem po googlu rozwizania tego problemu, ale niestety nie udalo mi sie go namierzyc, z tego co zauwazylem problem przewija sie w dyskusjach od dluzszego czasu ale jak juz wspomnialem jednoznacznego rozwiazania brak. Moze ktos z was zetknol sie z tym problemem i jakos udalo sie go rozwiazac.
Dzieki za wszelaka pomoc.
Go to the top of the page
+Quote Post
nevt
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


sprawdź, czy nie ma błędu po wywołaniu:
  1. <?php
  2. $stmt = $conn->query($sql);
  3. ?>

na pewno przeniosłeś procedurę SQL multiple_rowsets() na zdalny serwer? możliwe, że w tej procedurze dzieje się coś, do czego nie masz uprawnień na zdalnym serwerze, np. zakładanie tabel tymczasowych...
Go to the top of the page
+Quote Post
rubinek
post
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 21.03.2005

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


Ostatnio zmodyfikowalem swoj kod do postaci:
  1. <?php
  2. $stmt = $this->_resourceDb->prepare($query);
  3. $stmt->execute();
  4. do {
  5. $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
  6. if ($rows) {
  7. $result[] = $rows;
  8. }
  9. } while ($stmt->nextRowset());
  10. ?>

Procedura ma najproszcza postac:
  1. BEGIN SELECT 'one';
  2. SELECT 'two';
  3. END

i w tabeli result dostaje tylko wynik z pierwszego zapytania 'one' (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Ten post edytował rubinek 24.05.2008, 10:44:24
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: 13.10.2025 - 00:52