![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 13 Dołączył: 23.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mam problem z funkcja mysql_fetch_array(), chce wyciagnac unikalne dane i pozniej zapisac je w tablicy i nie wiem czy dobrze to robie:
CODE $zapytanie_1 = "select DISTINCT album from katalog"; $dane_1 = mysql_query($zapytanie_1); $ile_1 = mysql_num_rows($dane_1); $array_1 = mysql_fetch_array($dane_1); chcac wyswitlic drugi (sa narazie dwa elementy unikane $ile_1=2) element o indeksie 1 nic nie wyrzuca. CODE echo $array_1[1]; Jezeli ktos wie co zle robie i maja jakis pomysl na rozwiazanie to prosze o rady. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 120 Pomógł: 10 Dołączył: 16.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 13 Dołączył: 23.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
nie pisalbym tutaj gdybym nie przeczytal manuala, pytam czy ktos wie gdzie jest blad Ten post edytował bikerszymek 10.09.2008, 20:22:23 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 120 Pomógł: 10 Dołączył: 16.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Zatem nie przeczytałeś dokładnie:
hint: - manual mówi: Zapisuje wiersz wyniku w tablicy asocjacyjnej. - tablice indeksuje się od 0 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 13 Dołączył: 23.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
wiec w jaki sposob zapisac do tablicy kolumne wynikow?
ps. wiem ze indeksuje sie od zera, element pierwszy o indeksie 0 jest wyswitlany normalnie. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 120 Pomógł: 10 Dołączył: 16.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
weź mnie nie załamuj, przykład z manuala:
Kod <?php
mysql_connect('localhost', 'uzytkownik', 'haslo') or die('Nie można się połączyć: ' . mysql_error()); mysql_select_db('baza'); $result = mysql_query("SELECT id, nazwa FROM tabela"); // PATRZ NA TE LINIJKI while ($row = mysql_fetch_array($result, MYSQL_NUM)) { printf ("ID: %s Nazwa: %s", $row[0], $row[1]); } mysql_free_result($result); ?> Ten post edytował Exek 10.09.2008, 20:34:26 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 13 Dołączył: 23.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem co zle robie ale wyrzuca mi w nieskonczonosc pierwszy wiersz i nie wchodzi do petli for...
to kod CODE $zapytanie_1 = "select DISTINCT album from katalog"; $dane_1 = mysql_query($zapytanie_1) or die('1'); $ile_1 = mysql_num_rows($dane_1) or die('2'); $array_1 = mysql_fetch_array($dane_1, MYSQL_BOTH) or die('3'); while($array_1) { echo $array_1["album"]; $zap = $array_1["album"]; $zapytanie_2 = "select nazwa from foto WHERE id ='$zap'"; $dane_2 = mysql_query($zapytanie_2) or die('4'); $ile_2 = mysql_num_rows($dane_2) or die('5'); $array_2 = mysql_fetch_array($dane_2) or die('6'); for ($b=0; $b >= $ile_2; $b++) { echo "link"; } } edit: Proszę o zamkniecie. Problem rozwiązany. Ten post edytował bikerszymek 10.09.2008, 22:11:50 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 120 Pomógł: 10 Dołączył: 16.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
1.
Twoje: Kod $array_1 = mysql_fetch_array($dane_1, MYSQL_BOTH) or die('3'); while($array_1) Nie jest równe: Kod while ($row = mysql_fetch_array($result, MYSQL_NUM)) { to co robi to while to przypisanie wyniku do zmiennej $row. Jeśli mamy rezultat to $row jest typu Array co po rzutowaniu na boolean daje true. Skoro jest true to while się wykonuje. Po zakończeniu warunek jest od nowa sprawdzany czyli de facto jest znowu cos (lub nie) do $row przypisane. 2. Poczytaj o MySQL a dokładniej o JOIN 3. Heh, powiedz co chcesz osiagnac tym? for ($b=0; $b >= $ile_2; $b++) hint: zastanów się jaką wartość ma $b a jaką $ile_2 na starcie w tym przypadku... Ten post edytował Exek 10.09.2008, 22:13:36 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 13 Dołączył: 23.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
chwile wczesniej przypadkiem wpadlem na to co napisales, jezeli chodzi o for to zaminilem go na takiego samego while tylko z innym zapytaniem i jest juz taka jak byc powinno. dzieki za pomoc:)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 13:02 |