Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MSSQL]Wynik jako tablica?
Karioka
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 25.10.2007

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


Mam taki oto kod:

  1. $wynik = mysql_query (
  2. "SELECT *,
  3. MATCH(a, b, c, d) AGAINST ('".$q."') AS score
  4. FROM pliki
  5. WHERE MATCH(a, b, c, d) AGAINST('".$q."')");
  6. $rekord = mysql_fetch_assoc($wynik);
  7. $numrows = mysql_num_rows($wynik);
  8.  
  9. if ($numrows) {
  10.  
  11. print_r($rekord);
  12.  
  13. }


Mimo, że numrows zwraca wyników kilkanaście to print_r wyświetla tablicę dla pierwszego wyniku.

Czy tak zwrócony wynik nie może być wyświetlony jako zwykły element tablicy czyli np. $rekord['a'][0] ?

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mortus
post
Post #2





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


Bo mysql_fetch_assoc, podobnie jak mysql_fetch_row i mysql_fetch_array zwracają tylko rekord, na który wskazuje wewnętrzny wskaźnik wyniku. Na początku jest to pierwszy rekord zwróconego wyniku, a po wywołaniu którejś z powyższych funkcji wewnętrzny wskaźnik wyniku przesuwa się do kolejnego rekordu. Rozwiązaniem może być:
  1. // nawiązanie połączenia z bazą danych
  2. // wybór bazy danych
  3. $zapytanie = "..."; //tworzymy zapytanie
  4. $wynik = mysql_query($zapytanie); // wykonujemy zapytanie, a wyniki zapisujemy do zmiennej $wynik
  5. // teraz w pętli w tablicy $tab zapisujemy kolejne rekordy
  6. while($row = mysql_fetch_assoc($wynik)) {
  7. $tab[] = $row;
  8. }
  9. print_r($tab);
Go to the top of the page
+Quote Post

Posty w temacie


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: 15.10.2025 - 07:08