![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.08.2005 Skąd: Pabianice Ostrzeżenie: (0%) ![]() ![]() |
Mam pytanie odnośnie usuwania pustych pól tablicy.
Dane do tablicy pobieram z tabeli w której kilka pozycji może być pustych. Chciałbym żeby wyświetlane były tylko te pozycje w których wpisane są wartości. Dane pobieram:
Robiłem próby typu:
ale nie udało mi się osiągnąć celu. Proszę o małą pomoc. |
|
|
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.08.2005 Skąd: Pabianice Ostrzeżenie: (0%) ![]() ![]() |
Gdziś robię jeszcze błąd bo wykonując kod
otrzymuje komunikat: Invalid argument supplied for foreach() |
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Jak juz chcesz wybierac wszystko i potem sprawdzac dodatkowo w php (a nie jak ja przedstawilem od razu w 1 zapytaniu SQL) to tak:
|
|
|
![]()
Post
#6
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Gdziś robię jeszcze błąd bo wykonując kod
otrzymuje komunikat: Invalid argument supplied for foreach() Masz otwartą klamrę po while ale nigdzie jej nie zamykasz. Dziwne, że nie masz parse errora. |
|
|
![]()
Post
#7
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Chodzi tu o foreach. Do zmiennej $wybrane przypisuje wartosc wyciagnieta z bazy i nie jest to tablica! Stad ten blad: nieprawidlowy argument w petli.
Poza tym przedstawilem 2 rozne sposoby na rozwiazanie tego problemu. Do zapytania SQL mozna dac inny warunek, bo nie wiem czy puste pola masz na mysli puste jao pusty ciag czy jako NULL. Jesli to 1 to moj przyklad powinien dzialac, jesli to 2 to zmien warunek na
Ten post edytował phpion.com 17.08.2006, 10:04:10 |
|
|
![]()
Post
#8
|
|
Grupa: Przyjaciele php.pl Postów: 698 Pomógł: 3 Dołączył: 28.03.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Gdziś robię jeszcze błąd bo wykonując kod
otrzymuje komunikat: Invalid argument supplied for foreach() Usuń linię #4. Popraw też klamry, tak jak mówi kszychu. Jak juz chcesz wybierac wszystko i potem sprawdzac dodatkowo w php (a nie jak ja przedstawilem od razu w 1 zapytaniu SQL) to tak:
Nie rozumiem dlaczego sprawdzasz tylko jedno pole z wyniku. Klamry też by się przydały, bo nie da się tego czytać... |
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Po co klamry do tego przykladu? I jak to 1 pole?
Ten post edytował phpion.com 17.08.2006, 10:07:43 |
|
|
![]()
Post
#10
|
|
Grupa: Przyjaciele php.pl Postów: 698 Pomógł: 3 Dołączył: 28.03.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Po to, żeby dało się to czytać... (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Nie lubię kodu bez klamerek, bo trzeba się bardziej zaangażować w zasięgi. Dodając klamry masz to wszystko widoczne na pierwszy rzut oka, nawet nie czytając instrukcji... Poza tym, jestem wzrokowcem... (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Twój kod pobiera z wszystkich rekordów pole 'wybrane' do tablicy o tej samej nazwie. Potem porównuje do pustego ciągu znaków kolejne elementy tej tablicy. Wypiszesz tylko niepuste elementy z kolumny 'wybrane'. Skrypt kszycha sprawdza natomiast wszystkie pola z kolejnych rekordów, o co chyba chodziło autorowi wątku... |
|
|
![]()
Post
#11
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Nie no nie czaje cie. Wg mnie nasze skrypty robia to samo, a juz na pewno moj robi to co powinien (nie mowiac juz o samym zapytaniu SQL napisanym wczesniej)
|
|
|
![]()
Post
#12
|
|
Grupa: Przyjaciele php.pl Postów: 698 Pomógł: 3 Dołączył: 28.03.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Pozwoliłem sobie na poprawki i podstawienie sztucznych danych zamiast SQL...
Teraz widać różnicę? Domyślam się, że kszychu tak widział całość... |
|
|
![]()
Post
#13
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Ej no ale zauwaz, ze kolega w swoim zapytaniu SQL wyciaga tylko 1 pole z bazy! Wiec, o ile dobrze zrozumiem jego zamierzenia, sposoby przedstawione przeze mnie beda ok.
|
|
|
![]()
Post
#14
|
|
Grupa: Przyjaciele php.pl Postów: 698 Pomógł: 3 Dołączył: 28.03.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Fakt, masz rację. Przeoczyłem zapytanie i zasugerowałem się liczbami mnogimi w treści posta. Zwracam honor (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#15
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
No (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
A tak na dobra sprawe mozna tez tak:
hehehe |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 18:57 |