![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 1 495 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Mam przykładową tablicę:
oraz zmienną $_GET['value'] o wartości np 'dwa'. Potrzebuję dwóch funkcji które: 1) zwrócą mi wartość elementu poprzedzającego ten z wartością z $_GET 2) zwrócą mi wartość elementu następnego po tym z wartością z $_GET Czyli dla $_GET['value']='dwa' potrzebuję uzyskać $prev='jeden' ($prev=$tab[1]) oraz $next='trzy' ($prev=$tab[3]). Manual prześledziłem i zainteresowały mnie funkcje prev , next oraz current ale nie bardzo wyszło mi zastosowanie ich. Nie byłoby problemu gdybym wiedział jak ustawić wewnętrzy wskaźnik tablicy na elemencie wskazanym przeze mnie poprzez wartość. Od biedy funkcje te mogłyby zwracać klucze/indexy tych elementów. EDIT: zrobiłem tak: Działa ale nie podoba mi to rozwiązanie. Na pewno jest krótsze i bardziej optymalne wyjście. Jest? Ten post edytował sadistic_son 24.12.2010, 06:23:25 -------------------- Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami... -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc! -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 568 Pomógł: 192 Dołączył: 7.03.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]()
Post
#3
|
|
![]() Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
Pytanie tylko czy indeksy są po kolei. Dodatkowo musisz sprawdzić czy dany element jest pierwszy/ostatni. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 30.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mam problem podobny - ale nie wiem czy tutaj da się zastosować podobne rozwiązanie
Ciągle mi nie wychodzi mam: $getWord=mysql_query("SELECT .....); if($getWordArray=mysql_fetch_array($getWord)) { while ($let = mysql_fetch_assoc($getWord)) { printf($let["id"]); a tu bym chciał printf poprzedniego id } i żadne triki nie działają. Wyświetla się tylko jeśli daję current - ale ani prev, ani next ani inne metody nie działają. Niekiedy prev i next zwracają też current. Rozumiem że pętla działa dla każdego elementu oddzielnie - ale nie ma sposobu aby zapamiętać i pobrać poprzedni (tak na prawdę chodzi mi o porównanie dwóch i wykonanie akcji w zależności od rezultatu. Acha - tablica jest po pytaniu z GROUP BY ==================== właśnie rozwiązałem - podaję przykład - (ale nie wiem czy tak jest dobrze) - w każdym razie działa $getWord=mysql_query(...); if($getWordArray=mysql_fetch_array($getWord)) { previous = ''; while ($let = mysql_fetch_assoc($getWord)) { $current = $let['id']; if ($current == $previous) { echo "bla"; } inne działania zależne na każdym elemencie $previous = $current; } Ten post edytował Dopler 31.05.2013, 00:19:45 -------------------- Genealogia Polaków
|
|
|
--silwanus82-- |
![]()
Post
#5
|
Goście ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 11:16 |