![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Czy jest możliwość manipulacji kolejnością, tak aby ten SELECT wykonywał się na końcu/jako drugi. Pobiera on wartość liczbową, którą zmienia kod znajdujący się poniżej. Dokładnie jest to licznik nieprzeczytanych wiadomości - użytkownik przeczyta wiadomość ale nadal widnieje 1 nieprzeczytana i dopiero znika po odświeżeniu. Oczywiście ajax tu by spełnił zadanie ale chce go uniknąć z mniej czy bardziej oczywistych powodów. Może flush()? Jeśli tak to w jaki sposób bo próbowałem różnych kombinacji i nic. -------------------- |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 709 Pomógł: 176 Dołączył: 24.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
Najpierw wykonaj update a później select.
-------------------- http://d3ut3r.wordpress.com/ | mysql_* jest przestarzałe UŻYWAJ PDO!
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
![]() ![]() Problem nierozwiązany. -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 709 Pomógł: 176 Dołączył: 24.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ja nie widzę w tym nic śmiesznego
![]() -------------------- http://d3ut3r.wordpress.com/ | mysql_* jest przestarzałe UŻYWAJ PDO!
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Pytanie... Czy jest sens? I tak zapytanie musisz wykonać i sprawdzić jego powodzenie. Już samo to wymusi na Tobie użycie przynajmniej mysql(i)_affected_rows() lub podobnej konstrukcji w PDO. Czy jedno zapytanie więcej zrobi tu różnicę jakąś? A nawet jeśli, to jak mniemam znasz liczbę lub id owych nieprzeczytanych i chyba zmniejszyć licznik ich o liczbę otrzymaną z wspomnianej wyżej funkcji nie jest trudne?
-------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Problem rozchodzi się o manipulacje kolejnością wykonywanego kodu - tylko.
Fakt, faktem dałem to w dział przedszkole ale mógłbyś d3ut3r się domyśleć, że problem jest trochę bardziej skomplikowany (np. po moim stażu). Nie mam możliwości, a przynajmniej będzie to trudne aby przestawić kolejność kodu. Jest licznik, potem jest update. Flush ze sleep opóźnia pojawienie się licznika ale i tak pokazuje wartość początkową. -------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Nie mam możliwości, a przynajmniej będzie to trudne aby przestawić kolejność kodu. No to masz problem. ALbo przestawisz kod albo masz jak masz.Cytat ale mógłbyś d3ut3r się domyśleć, że problem jest trochę bardziej skomplikowany Niby czemu miał się tego domyślić? Już nie raz tutaj użytkownicy podawali "super hiper skomplikowane" kody, gdzie wystarczylo pół minuty poprawek. Nikt tutaj w myślach nie czyta i teksty jak ten:Cytat trochę humoru nie wieczór nie zaszkodzi naprawdę sprawy nam nie ułatwiają.
Problem nierozwiązany. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Mógł się domyśleć bo mówię o manipulacji kolejnością, podałem przykład z flush itp.
Dla każdego chyba jest oczywiste, że kolejność jest od góry do dołu. Cytat No to masz problem. Dzięki, tyle wiedziałem zanim napisałem temat. -------------------- |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
Mógł się domyśleć bo mówię o manipulacji kolejnością, podałem przykład z flush itp. a może ta manipulacja kolejnością wcale nie jest potrzebna, z Twojego dotychczasowego opisu problem wydaje się banalny, jak dla mnie to próbujesz przekombinować cały problem, ale najlepiej wklej kod to będzie wiadomo o co chodzi co do tej manipulacji tutaj możesz o tym poczytać http://php.net/manual/en/control-structures.goto.php, ale jestem przekonany, że Twój problem da się łatwiej rozwiązać Ten post edytował tehaha 25.10.2010, 12:28:01 |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat No to masz problem. No nie do konca. Jak pisales temat to myslales ze w magiczny sposob można zmienic kolejnosc. Ja ci wyjasnilem ze nie Dzięki, tyle wiedziałem zanim napisałem temat. ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Nie, raczej nie.
Kod tu nic nie zmieni. Wygląda tak. MENU w którym jest ta wartość TREŚĆ STRONY UPDATE Jasne. Mogę dać kod odpowiedzialny za modyfikacje bazy nad menu. Potem jednak musiałbym powtórzyć resztę kodu który coś tam wyświetla pod menu, w treści strony (rozbić na dwie części). Chciałem to po prostu zrobić, tak aby licznik aktualizował się jako ostatni. Flush, LOW PRIORITY się chyba nie zdają. A liczyłem, że rozwiązanie jest proste bo czytałem o nim w jakimś tutorialu z tym, że dosyć dawno. Mam jeszcze w pamięci mniej więcej taką konstrukcję: Cytat { tu wstaw kod, który ma wykonać się na końcu } tu reszta kodu I komentarz "czasami mamy potrzebę zmiany kolejności wykonywania kodu". Być może chodziło o flush, z tym, że on już zapamiętuje wartości wykonane przez selecta, a nie wykonuje go na końcu. Jeśli takie jest działanie tej funkcji, a nie ma innego rozwiązania to ok. Poddaję się i zmieniam kolejność albo stosuje ajax. nospor w jakimś stopniu jednak się da.. Ten post edytował markonix 25.10.2010, 12:36:39 -------------------- |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
a sprawdziłeś to? http://php.net/manual/en/control-structures.goto.php, swoją drogą dziwne, że z takim stażem kompletnie pomieszałeś kod wykonawczy z szablonem i teraz najprostsze operacje są bardzo skomplikowane
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat nospor w jakimś stopniu jednak się da.. Widzisz, masz złą logkię aplikacji.Najpierw należy wykonywać akcje, a dopiero potem wyświetlać informacje. A ty masz to wszystko pomieszane, stąd masz problem. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Niestety to gotowy system, zakodowany w dużej mierze i żeby zastosować w nim system szablonów musiałbym go napisać od nowa.
Goto, zaraz poczytam. Edit: chyba jednak nie przetestuje (dostępne od php 5.3), ale w teorii myślę że by to zadziałało więc dziękuje i tak. Ciekawy pomysł. Ten post edytował markonix 25.10.2010, 12:49:40 -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 05:33 |