![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 20.02.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Mam problem (no ale, kto ich nie ma ![]() [php:1:db9a218e27]<?php while($tab = mysql_fetch_array($query)){ foreach($tab as $dane){ echo"$dane <br>"; } } ?>[/php:1:db9a218e27] Kończy się to tym, że na ekranie, istotnie mam wypisaną zawartość tablicy z bazy danych, ale 2x. Zawartość każdego pola wypisana jest dwukrotnie. Co zrobić, żeby wszystko wyświetlało się pojedyńczo? -------------------- Wieczność jest bardzo nudna, szczególnie pod koniec - Woody Allen
/home/env: Apache 2.2 | PHP 5.2 | MySQL 5.1 | FreeBSD 8.0 | NetBeans 6.8 | symfony 1.4 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
trzeba ustawic typ zwracanych danych przez mysql_fetch_array. Gdyz bez jego podania tablica zawiera elementy z indexami asocjacyjnymi oraz numerycznymi - stad duplikaty.
[php:1:0cf653ce6e]while ( $tab = mysql_fetch_array( $query, MYSQL_ASSOC ) ) { //...[/php:1:0cf653ce6e] |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 20.02.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Dzięki Bender... to znaczy, Seth
![]() -- UPDATE -- Dobra, jeszcze jedno pytanie: foreach wypisuje elementy tablicy, póki się nie skończą. Chciałbym, żeby do wartości ostatniego elementu tablicy został dopisany jakiś ciąg. Mogę użyć if, ale jaki dać warunek? -------------------- Wieczność jest bardzo nudna, szczególnie pod koniec - Woody Allen
/home/env: Apache 2.2 | PHP 5.2 | MySQL 5.1 | FreeBSD 8.0 | NetBeans 6.8 | symfony 1.4 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
Mozesz dac tak:
[php:1:c0ab569051]$tablica[size_of( $tablica ) - 1] .= 'cos';[/php:1:c0ab569051] Doda to do ostatniego elementu tablicy string: cos |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 20.02.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
A jak dać to do pętli if, która sprawdzała by przy każdym przejściu foreach, czy wypisany element, jest ostatni?
-------------------- Wieczność jest bardzo nudna, szczególnie pod koniec - Woody Allen
/home/env: Apache 2.2 | PHP 5.2 | MySQL 5.1 | FreeBSD 8.0 | NetBeans 6.8 | symfony 1.4 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
Nie jest to zbyt dobry pomysl, gdyz w foreach'u nie masz wartosci, ktory akurtat index jest pobierany, wiec nie wiesz czy to juz kiniec czy moze srodek lub poczatek.
Mozna to zrobic przez podanie wczesniej do zmiennej rozmiaru calej tablicy i potem w foreach'u zwiekszanie innej zmiennej co 1 po kazdym przejsciu i sprawdzanei czy wartosc ta nie ejst rowna wielkosci tablic - wtedy mieli bysmy koncowy element - ale takie rozwiazanie po pierwsze jest malo wydajne, a po drugie wzasadzie robi to samo co for. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 602 Pomógł: 0 Dołączył: -- Skąd: W - WA -> GRO Ostrzeżenie: (0%) ![]() ![]() |
Nie prosciej przejsc na jednoznaczne zapytanie, np. mysql_fetch_row(); :?:
Wtedy tylko sizeof(...) i po zabawie ![]() -------------------- Zanim zadasz pytanie, zawsze wczesniej zajrzyj do manuala ( pl.php.net/manual/pl/ ).
Szukasz skryptow - www.hotscripts.com |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 00:30 |