Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: uchwyt mysql przekazywany jako argument
Forum PHP.pl > Forum > PHP
boocheck
mam funkcje w innym pliku, ktora sobie importuje:

  1. function GetTableFromQuery($sql, $query){
  2. $tab = array();
  3. $res = mysqli_query($sql, $query);
  4. while($row = mysqli_fetch_array($res)){
  5. array_push($tab, $row);
  6. }
  7. return $tab;
  8. }


i potem chce ja uzyc na istniejacym uchwycie/polaczeniu

*
  1. $tab = GetTableFromQuery($mojePolaczenieKtoreDzialaNaInnychPrzykladach, "SELECT * FROM jakasTabela");

**

nie dziala, mimo ze na tym polaczeniu moge pracowac w miejscu * lub ** i mam dostep, to mysqli_query wewnatrz zawsze konczy sie niepowodzeniem.
dlaczego?

p.s.
probowalem tez:

  1. function GetTableFromQuery(&$sql, $query){
  2. $tab = array();
  3. $res = mysqli_query($sql, $query);
  4. while($row = mysqli_fetch_array($res)){
  5. array_push($tab, $row);
  6. }
  7. return $tab;
  8. }


i rowniez nie dziala.
wookieb
A przeczytaj z pare rązy manual mysql_queryMój błąd. Nie zauważyłem "i" po "mysql"
Tomplus
Myśle że gdybyś dodał do funkcji

  1. global $tab;


to powinno Ci działać.
boocheck
nie wiem czy zauwazyles ale ja uzywam mysqli_query.

jesli chodzilo ci o to, ze mysql_query zapamietuje ostatnio uzyty handler jesli sie go nie poda to widzialem to, lecz wersja z "i" juz tego nie robi.
Pilsener
Cytat
nie dziala
- a obsługę błędów masz włączoną i jakieś błędy wywala? I po co używać mysqli by robić to proceduralnie? Może gdzieś nadpisujesz zmienną $sql? Jak nie wyświetla żadnych błędów, to identyfikator połączenia jest przekazywany prawidłowo, inaczej powinien zostać wygenerowany warning o złym typie argumentu dla funkcji mysqli_query.
boocheck
query zwracalo falsz bo mialem literowke w nazwie tabeli. przepraszam za stracony czas
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.