Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Działanie na zmiennych i dziwny błąd
monkomp
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 11.07.2013

Ostrzeżenie: (0%)
-----


Jako, że jest to mój pierwszy post wypadało by się przywitać, zatem - Witam wszystkich smile.gif

Mam następujący problem (mam nadzieje, że nie dubluje innego tematu, jeśli tak się stało z góry przepraszam, ale nawet sam do końca nie wiem jak szukać odpowiedzi na ten problem)

Mam kod PHP z elementami JS (nie wklejam, bo ma on ponad 2000 linijek). W jednej z funkcji pojawia się następujące działanie:

"rata[nr_raty] - brakujaca_kwota"

Skrypt się wysypuje, pomimo, iż obie wartości są liczbowe, ale co ciekawe jak zrobię działanie odwrotne, czyli:

"brakujaca_kwota - rata[nr_raty]"

to wszystko działa, tylko oczywiście wynik jest ujemny. Chciałem to obejść dodając na końcu mnożenie przez (-1), ale wówczas znowu się sypie.

Wymyśliłem więc taką konstrukcję (dodam tylko, że muszę koniecznie mieć wartośc dodatnią, a nie ujemną):

wynik = brakujaca_kwota - rata[nr_raty];

wynik = wynik - wynik - wynik; (teoretycznie ta konstrukcja powinna bez mnożenia przejść od wartości ujemnej na dodatnią, ale niestety znowu się sypie.

Podsumowując działa każda konstrukcja prowadząca do liczby ujemnej, ale dodatniej za nic w świecie nie można uzyskać bo skrypt się wysypuje. Czy ktoś z Was ma pomysł jak sobie z tym poradzić? Z góry dzięki za pomoc smile.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




1) Podaj kod a nie pseudokod
2) Wysypuje sie czyli co? Przez sitko przelatuje piasek? Czy moze dostajesz jakies komunikaty bledow? Zajrzyj do konsoli bledow FIREBUG w FIREFOX


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
monkomp
post
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 11.07.2013

Ostrzeżenie: (0%)
-----


Ok, przygotuję popołudniu kawałek kodu do wklejenia (teraz jestem w pracy i nie mam dostępu do kodu).

Dodam tylko, że samo działanie działa następująco:

rata[nr_raty] - brakujaca_kwota; zwraca wartość 0, a powinno 120, natomiast po odwróceniu działania do postaci:

brakujaca_kwota - rata[nr_raty]; zwraca wynik (-120), czyli w tym przypadku działanie jest wykonywane.

Żadnych komunikatów o błędach mi nie zwraca.

Dzięki za sugestię co do FIREBUGa, nie stosowałem tego, ale sprawdzę.
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Żadnych komunikatów o błędach mi nie zwraca.
Nie zwraca, bo nie zajrzales do konsoli bledow.
Poza tym na jakiej podstawie stwierdzasz ze sie wysypuje skoro nie masz zadnych bledow? Moze sie nie wysypuje a tylko dziala inaczej jakbys chcial?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
monkomp
post
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 11.07.2013

Ostrzeżenie: (0%)
-----


Skoro mam działanie i zamiast zwrócić 120 zwraca mi zero, a po odwróceniu działania zwraca 120 to chyba coś jednak jest nie tak jak powinno? Stąd stwierdzam że się wysypuje, choć może trafniejszym określeniem będzie stwierdzenie - zwraca błędny wynik.
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
choć może trafniejszym określeniem będzie stwierdzenie - zwraca błędny wynik.
No, to spora roznica.... Jak sie skrypt wysypuje to konczy natychmiast swoje dzialanie. U ciebie tak sie nie dzieje, u ciebie skrypt dziala ciagle ino źle - a to naprawde jest spora różnica. Dlatego tak wazne jest by opisywac problem dokładnie a nie po łebkach. Tu wrozek nie ma.

Czekamy więc na kod.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 14:55