Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Problem z PDO i funkcją
Forum PHP.pl > Forum > Przedszkole
sparrovv
Witam, mam bardzo dziwny problem. Najprawdopodobniej robię jakiś głupi błąd, niemniej nie potrafię go dostrzec.
Sprawa przedstawia się następująco.
Mam kod, który odpowiada za pobranie danych z bazy i wygląda on tak:

CODE

require_once('dbconnect.php');

try
{
$collect = $pdo->query('SELECT `Title` FROM `posts`');
$collect->setFetchMode(PDO::FETCH_ASSOC);
$result = $collect->fetchAll();
$collect->closeCursor();
}
catch(PDOexception $e)
{
echo 'Wystapil blad biblioteki PDO: ' . $e->getMessage();
}

print_r($result);


Kod ten działa jak należy, ale potrzebuję go umieścić w funkcji i chciałbym, żeby zwracał tablicę z wynikami:
CODE

require_once('dbconnect.php');

function pobierz()
{
.
.(ten sam kod co wyżej)
.
return $result;
}
print_r(pobierz());

a to mi już nie działa i przy okazji nie zwraca żadnych błędów.
Mógłby mnie ktoś uświadomić, co robię nie tak?

Pozdrawiam
dziurson
nie wiem czy to coś zmienia, ale próbowałeś najpierw wynik funkcji przypisać do zmiennej a potem ją wyświetlić questionmark.gif
nevt
tu masz błąd:
  1. <?php
  2. print_r(pobierz());
  3.  
  4. // powinno być
  5.  
  6. print_r(pobierz($pdo));
  7.  
  8. // i oczywiście w funkcji...
  9.  
  10. function pobierz($pdo)
  11. {
  12. ...
  13. }
  14. ?>

po prostu wewnątrz funkcji pobierz() nie widzisz zmiennej globalnej $pdo utworzonej w 'dbconnect.php'

powodzenia.
sparrovv
Cytat(nevt @ 9.12.2007, 16:04:40 ) *
tu masz błąd:
  1. <?php
  2. print_r(pobierz());
  3.  
  4. // powinno być
  5.  
  6. print_r(pobierz($pdo));
  7.  
  8. // i oczywiście w funkcji...
  9.  
  10. function pobierz($pdo)
  11. {
  12. ...
  13. }
  14. ?>

po prostu wewnątrz funkcji pobierz() nie widzisz zmiennej globalnej $pdo utworzonej w 'dbconnect.php'

powodzenia.


Rzeczywiście. Całkowicie o tym zapomniałem.
Wielkie dzięki.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.