Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Jak wyzerować pozycję wskaźnika tablicy
Jarod
post
Post #1





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

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


Mam mały problem. Przed właściwym pobraniem z bazy danych, najpierw sprawdzałem czy są jakieś rekordy w następujący sposób:
  1. $result = mysql_query('SELECT COUNT(rejs_id) FROM rejs WHERE data=''.$biezacaData.'' AND kierunek='o'') OR die ('Zapytanie nieudane!');
  2. $query_data = mysql_fetch_row($result);
  3.  
  4. IF ( $query_data > 0 )
  5. {
  6.  
  7. }
  8. else
  9. {
  10.  
  11. }


Doszedłem do wniosku, że wzrośnie szybkość wykonywania skryptu jeśli od razu pobiorę interesujące wiersze i sprawdzę czy wynik jest większy > 0.

  1. $result = mysql_query('...jakieś zapytanie') OR die ('Zapytanie nieudane!');
  2. $query_data = mysql_fetch_row($result);
  3.  
  4. while ($query_data = mysql_fetch_row($result))
  5. {
  6. ...
  7. ...
  8. //wyśiwtlanie danych na ekranie
  9. ...
  10. ...
  11. }


Z tym że w pętli jest jeden rekord mniej, bo już jeden pobrałem, żeby sprawdzić czy zapytanie zwróciło wynik (tym samym czy są szukane dane w bazie).

PYTANIE: Czy jest jakaś funkcja podobna do reset(), którą można zastosować w tym przypadku?
reset(mysql_fetch_row($result)); generuje warninga..
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
KG-
post
Post #2





Grupa: Zarejestrowani
Postów: 61
Pomógł: 0
Dołączył: 30.05.2006

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


Możesz wykonać ponowne zapytanie albo pobierz rekordy i dołącz do tablicy ten pierwszy. Można to zrobić na kilka sposobów, np:

  1. <?php
  2. $query_data_f = mysql_fetch_row($result);
  3. $query_data = array();
  4. while ($query_data[] = mysql_fetch_row($result));
  5.  
  6. $query_data[] = $query_data_f;
  7. foreach ($query_data as $q) {
  8. // costam wyswietlamy
  9. }
  10. ?>
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: 4.10.2025 - 15:03