![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 13.03.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam
Chcialbym wiedziec, czy w ogole jest mozliwe zwrocenie kilka razy wynikow z tego samego zapytania do bazy czyli np. [php:1:db314bd1c1] $www=mysql_query("SELECT * FROM tabela"); while ($ww=mysql_fetch_array($www)) { //kod programu } //i teraz ponownie to samo, bez zadawania ponownie tego samego zapytania while($ww=mysql_fetch_array($www)) { //jakis inny kod programu } [/php:1:db314bd1c1] Czy jest to w ogole mozliwe?? |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 436 Pomógł: 6 Dołączył: 8.11.2003 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Oczywiście, Jeżeli nie zmienisz wartości zmiennej WWW to powinno być dobrze i działać. Jeżeli natomiast zmienisz wartość zmiennej to już nie.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 13.03.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam
wlasnie o to chodzi, ze nie jest dobrze. Zaraz po wykonaniu while-a, wartosci z $www znikaja (tak jak shift w tablicach) |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 436 Pomógł: 6 Dołączył: 8.11.2003 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Hmm. To mozesz przeciez przekazać do innej zmiennej ? np.
[php:1:fa8136267a]<?php $www=mysql_query("SELECT * FROM tabela"); $ww2 = $www; while ($ww=mysql_fetch_array($www)) { //kod programu } //i teraz ponownie to samo, bez zadawania ponownie tego samego zapytania while($ww=mysql_fetch_array($ww2)) { //jakis inny kod programu } ?>[/php:1:fa8136267a] Możę zadziała bo nie mam okazji sprawdzić. |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 85 Pomógł: 0 Dołączył: 2.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Nic z tych rzeczy. Nie możesz używać [manual:55a4d42088]mysql_fetch_array[/manual:55a4d42088]. Jeśli chcesz wielokrotnie użyć tego samego wyniku, to musisz skorzystać z [manual:55a4d42088]mysql_data_seek[/manual:55a4d42088] i [manual:55a4d42088]mysql_fetch_row[/manual:55a4d42088]:
[php:1:55a4d42088]<?php $www = mysql_query("SELECT * FROM tabela"); $ilosc_wierszy = mysql_num_rows( $www ); for ($i = 0; $i < $ilosc_wierszy; $i++) { mysql_data_seek( $www, $i ); $wynik_1[] = mysql_fetch_row( $www ); } for ($i = 0; $i < $ilosc_wierszy; $i++) { mysql_data_seek( $www, $i ); $wynik_2[] = mysql_fetch_row( $www ); } ?>[/php:1:55a4d42088] EDIT: A właściwie prościej: [php:1:55a4d42088]<?php $www = mysql_query("SELECT * FROM tabela"); while ( $wynik_1[] = mysql_fetch_row( $www ) ) { // operacje różne } mysql_data_seek( $www, 0 ); while ( $wynik_2[] = mysql_fetch_row( $www ) ) { // operacje różne } ?>[/php:1:55a4d42088] |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 13.03.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam
Dzieki. Wlasnie o cos takiego mi chodzilo. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 16:56 |