Strona 1 z 1

Problem z przepisaniem wynikow...

PostNapisane: 10 lipca 2005, o 09:23
przez Kapitan
Witam. Mam taki problem - po prostu zglupialem kompletnie. Do tej pory wszystko gralo i bach... Wybieram z bazy dane prostym zapytaniem

$zadanie5 = "select id_druzyny, data, godzina from terminarze
where kolejka = 'I'";
$rezultat5 = mysql_query($zadanie5);

a nastepnie wyniki z jednej kolumny 'id_druzyny' chce wpisac sobie do tablicy jednowymiarowej $tab_druzyn_id. Wpisuje, owszem, ale tylko jeden wynik (cyfre 1), podczas gdy przy pomocy tego zapytania otrzymuje trzy wyniki kolejno powinny to byc 1, 2 i 164. Zapytanie dziala poprawnie, wpisalem je w phpmyadmin i mam 3 wiersze. sprawdzilem, po wybraniu z bazy po mysql_query tez mam 3 wiersze, a po mysql_fetch_array i "probie przepisania" tego mam juz tylko 1 - sprawdzilem count`em. o co tu chodzi? W ten sposob przepisywalem sobie niemal wszystkie dane, ktore potrzebne byly mi jako najprostsza tablica i dzialalo...

while($tab_gl = mysql_fetch_array($rezultat5));
{
$tab_druzyn_id[] = $tab_gl['id_druzyny'];
};

malo tego przy probie uzycia tablicy $tab_druzyn_id i wypisania pierwszego elementu o indeksie 0 mam pustke w komorce, chociaz ponoc "cos" w niej jest (wspomniany 1 element) natomiast jesli uzyje $tab_gl['id_druzyny'] wartosc nagle sie pojawia (tez tylko jedna).
Poradzcie, co moglem zrobic zle, siedzialem juz nad tym sporo sprawdzalem zmienna po zmiennej... rece opadaja.

Problem z przepisaniem wynikow...

PostNapisane: 10 lipca 2005, o 10:07
przez lucas
Na pierwszy zaspany rzut oka jest OK, pokaż szrszy fragment kodu.

PostNapisane: 10 lipca 2005, o 21:34
przez Kapitan
Tak sie sklada, ze wywalilem wszystko! W tej chwili w tym skrypcie nie ma nic procz tego, co napisalem. Proste zapytanie - odpalam phpmyadmin - 3 wyniki,
sprawdzam mysql_num_rows po zapytaniu print - 3 wyniki - przepisuje do tablicy w nastepujacy sposob
while($tab_gl = mysql_fetch_array($rezultat5));
{
$tab_druzyn_id[] = $tab_gl['id_druzyny'];
};
count(tab_druzyn_id) i k... okazuje sie, ze tablica ma JEDEN ELEMENT - z pierwszego wiersza w bazie. Wiec pytam o co tu chodzi??? W iedntyczny sposob zadaje pytania do tej samej tabeli ale o inne dane, np rok, runde, kolejke, przepisuje - sprawdzam przed wykonaniem mysql_fetch_array 3 wyniki ok, po mysql_fetch_array i przepisaniu jak wyzej do tablicy $tab_kolejek i count - mam 3 wyniki - wszystko gra. Przyklad ponizej

$zadanie2 = "select distinct(kolejka), id_roku, runda data from
terminarze where id_roku = '$id_roku'";

$rezultat2 = mysql_query($zadanie2);

while($tab_kolejek = mysql_fetch_array($rezultat2));
{
$kolejka[] = $tab_kolejek['kolejka'];
};

Co z tym fantem zrobic? Czegos takiego jeszcze nie mialem.

PostNapisane: 10 lipca 2005, o 21:41
przez lucas

PostNapisane: 10 lipca 2005, o 22:44
przez Kapitan
Dobre sobie :) Chyba w ogole nie czytales, tego co napisalem :) Dziwnym trafem mialbym za kazdym razem 3 wyniki dokladnie 3 takie jakie powinienem miec po wykonaniu przykladowego zapytania, ktore podalem jako przyklad dzialajacego? :) Piszac nic procz wspomnianych funkcji chcialem dac do zrozumienia, iz nie mam innych zbednych w tym momencie funkcji, a jedynie podstawowe sluzace do wykonania tak prostego zapytania.
Ok, Niech bedzie - kawa na lawe. Chociaz nie wiem dlaczego 3 linie wiecej, ktore pominalem mialby w tym momencie cos zmienic. Od razu uprzedzam - funkcje na dole generuja strone jakies proste tabele - nic poza tym. funkcja polaczenie - laczy sie z baza - mam tez podac jak wyglada, bo za chwile mi powiesz, ze tam mam blad :) i wyniki, ktore otrzymuje sa "przypadkowymi" liczbami, ktore przypadkowa sa takie same, jak dane w mojej bazie.
<?
polaczenie();
$set = @mysql_query ('set names latin2');
$set = @mysql_query ('set collation_connection=latin2_general_ci');

$zadanie = "select id_druzyny, data from terminarze where kolejka = 'I'";
$rezultat = mysql_query($zadanie);
$liczba_k = mysql_num_rows($rezultat);
print $liczba_k; /// wynik 3 wiersze - tak powinno byc kolejno 164, 1, 20

while($tab_gl = mysql_fetch_array($rezultat));
{
$tab_druzyn_id[] = $tab_gl['id_druzyny'];
};

$liczba_g = count($tab_druzyn_id);
print $liczba_g;// wynik - 1 element - 164

//teraz inne zapytanie w tym samym skrypcie

zadanie2 = "select distinct(kolejka), id_roku, runda data from terminarze where id_roku = '$id_roku'";

$rezultat2 = mysql_query($zadanie2);
$wynik2 = mysql_num_rows($rezultat2);
print $wynik2; // wynik 3 wiersze

while ($tab_kolejek = mysql_fetch_array($rezultat2))
{
$kolejka[] = $tab_kolejek['kolejka'];
};

$liczba_c = count($kolejka);
print $liczba_c; // 3 elementy - I, II, III

pierwsza_cz_panel();

druga_cz_panel();
?>

PostNapisane: 11 lipca 2005, o 17:35
przez antyqjon

PostNapisane: 11 lipca 2005, o 20:29
przez Kapitan
Ja pieprze Oo. Taka pierdolka i tyle siedzenia, sledzenia... sprawdzania i zero kom. o bledach od parsera... Dzieki za pomoc. Teraz jest ok.