Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 17.07.2009 Ostrzeżenie: (0%)
|
Witam!
Nie rozumiem czemu nie mogę porównać wartości wierszy kolumn o podanych nazwach zmiennych w przypadku kiedy kolumny nie są ułożone obok siebie w poziomie, tylko jedna na drugiej lub w osobnych tabelach. Przykład: (tabela z dwiema kolumnami, które są ułożone obok siebie) Kod $kolumna_1[0] $kolumna_1[1] w takim układzie działa taka funkcja:
ale jeżeli mam np taki zestaw kolumn: (tabela z dwiema kolumnami, które są ułożone jedna na drugą) Kod $kolumna_1[0] $kolumna_2[0] w takim układzie kolumn nie działa taka funkcja (zawsze jest FALSE):
Wygląda to tak jakby php nie pamiętało o tym, że wyżej była taka kolumna o zmiennej $kolumna_1[0]. (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif) Przedstawię mój kod, bo może mam jakiś błąd.
Też nie ma znaczenia czy kolumny, które są ułożone jedna na drugiej są razem w tabeli czy w oddzielnych tabelach - zawsze nie można się w jednej kolumnie odwołać do wartości kolumny, która jest "wyżej/niżej". Pozdrawiam! Ten post edytował wojteke 5.08.2009, 23:00:02 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 17.07.2009 Ostrzeżenie: (0%)
|
Zrobiłem teraz tak:
(IMG:http://img228.imageshack.us/img228/3314/kolumny3.gif) Czyli przyrównuję wartości dwóch tablic, z tym, że pierwsza tabelka ma tylko jedną komórkę. Jeszcze raz przedstawię kod ale z var_dump'ami.
var_dump($kolumna_2); Kod array(1) { [0]=> string(1) "2" }
echo var_dump($kolumna_2) . var_dump($strzala) . var_dump($kolumna). '< br>'; Kod bool(false) string(5) "puste" array(2) { [0]=> string(0) "" [1]=> string(2) "-6" } bool(false) string(5) "puste" array(2) { [0]=> string(0) "" [1]=> string(1) "2" } bool(false) string(5) "puste" array(2) { [0]=> string(0) "" [1]=> string(1) "3" } Powyższy kod przyrównuje ($kolumna_2[0] == $kolumna[1]) i instrukcja IF nie zwraca TRUE, a powinno, bo w obu tablicach jest "2" w kolumnach: $kolumna_2[0] i $kolumna[1]. Poniżej przedstawię kod który porównuje stałą zmienną $kolumna_stala_zmienna[numerek] = 2; z tabeli i wtedy instrukcja IF zwraca TRUE: Wszystko co napisałem poniżej jest tylko po to by pokazać, że skrypt przydziela styl CSS, jeśli porównuję: ($kolumna_stala_zmienna[numerek] == $kolumna[1]) czyli stałą zmienną z danej tabeli do zmiennej $kolumna[1] z bazy danych.
var_dump($kolumna_stala_zmienna); Kod array(1) { ["numerek"]=> int(2) }
echo var_dump($kolumna_stala_zmienna) . var_dump($strzala) . var_dump($kolumna). '<br>'; Kod array(1) { ["numerek"]=> int(2) } string(5) "puste" array(2) { [0]=> string(0) "" [1]=> string(2) "-6" } array(1) { ["numerek"]=> int(2) } string(8) "strzalka" array(2) { [0]=> string(0) "" [1]=> string(1) "2" } array(1) { ["numerek"]=> int(2) } string(5) "puste" array(2) { [0]=> string(0) "" [1]=> string(1) "3" } Czyli wyświetla strzałkę: string(8) "strzalka". Czemu w pierwszym przypadku nie działa porównanie zawartości tablic? Ten post edytował wojteke 6.08.2009, 13:53:35 |
|
|
|
wojteke [PHP] Porównywanie wartości kolumn o podanych nazwach zmiennych w przypadku kiedy kolumny nie są ułożone obok siebie w poziomie. 5.08.2009, 22:33:07
Quider ale zagmatwałes..
Czy tobie chodzi o tablice wielo... 5.08.2009, 22:39:46
wojteke Raczej nie. Mam jedną tablicę i drug... 5.08.2009, 22:48:58
JoShiMa Ale co to znaczy dla kolumn ułożonych ob... 6.08.2009, 00:16:32 
wojteke Cytat(JoShiMa @ 6.08.2009, 01:16:32 )... 6.08.2009, 00:47:53
ayeo Witam!
Tu nie chodzi o warunek tylko o to co ... 6.08.2009, 01:23:08
JoShiMa Powiem Ci co zrobić. Zacznij się uczy... 6.08.2009, 20:15:05
wojteke Cytat(JoShiMa @ 6.08.2009, 21:15:05 )... 7.08.2009, 10:17:37
JoShiMa Masz zrozumieć jak działają tablice, i jak działa ... 8.08.2009, 12:08:12
wojteke Hehe, wystarczyło $kolumnę_2 nie wywoływać z ... 13.08.2009, 21:57:03 ![]() ![]() |
|
Aktualny czas: 25.12.2025 - 12:59 |