Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> [PHP][MYSQL]Problem z zmienną
maxiu99
post 9.07.2008, 12:02:07
Post #1





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 6.10.2007

Ostrzeżenie: (10%)
X----


Witam, mam otóż taki mały problem z moją zmienną, chce zeby zmienna nigdy w zyciu niemogła wyniesc wiecej niz 100 i niewiem jak to zrobic...

Ten post edytował maxiu99 9.07.2008, 12:06:25
Go to the top of the page
+Quote Post
redelek
post 9.07.2008, 12:05:23
Post #2





Grupa: Zarejestrowani
Postów: 658
Pomógł: 37
Dołączył: 4.06.2005
Skąd: Wawa

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


Cytat(maxiu99 @ 9.07.2008, 11:02:07 ) *
Witam, mam ot.óz taki mały problem poniewaz chce zrobic tak zeby moja zmienna nigdy w zyciu neimogła wynies wiecej niz 100 i niewiem jak to zrobic...


Jak to zmienna ?

Może jestem nie życiowy ale dla mnie to powinno być jakimś warunkiem if sprawdzone. W samej zmiennej nie można robić hocków klocków.
Ale mogę się mylić.

Pozdrawiam
Redelek


--------------------
Pozdrawiam
Piotrek R
Go to the top of the page
+Quote Post
maxiu99
post 9.07.2008, 12:07:29
Post #3





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 6.10.2007

Ostrzeżenie: (10%)
X----


przepraszam, chodzi o wartosc zmiennej zeby niemogła wynies więcej niz 100
Go to the top of the page
+Quote Post
m87
post 9.07.2008, 12:29:40
Post #4





Grupa: Zarejestrowani
Postów: 21
Pomógł: 4
Dołączył: 5.07.2008

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


  1. <?php
  2. if ($zmienna > 100)
  3. echo "Błąd, zmienna jest większa niż 100";
  4. ?>


Innego sposobu chyba nie ma.
Ewentualnie można zrobić obiekt trzymający tą wartość i w metodzie, która ją ustawia dać warunek sprawdzający.
Go to the top of the page
+Quote Post
maxiu99
post 9.07.2008, 12:41:14
Post #5





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 6.10.2007

Ostrzeżenie: (10%)
X----


miałem tak samo w warunku if ale taka sprawa rozwiązania zbytnio niemoze byc poniewaz: gdy zmienna ma wartosc 99 i na mojej stronie mam skrypt który dodaje +5 do tej zmiennej 
wtedy  w tym warunku wszystko jest ok ale po wykonaniu skryptu zmienna ma juz wartosc 104 i chciałbym tego uniknąc.... ale niewiem w jaki sposób
Go to the top of the page
+Quote Post
piotrooo89
post 9.07.2008, 13:03:39
Post #6


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




a nie możesz później wyniki sprawdzać czy jest mniejszy od 100?


--------------------
Go to the top of the page
+Quote Post
scanner
post 9.07.2008, 13:12:01
Post #7





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




  1. <?php
  2. $iInt = ( $iInt <= 100 ) ? $iInt : 100;
  3. ?>

Jeśli wartość zmiennej jest mniejsza lub równa 100, pod zmienną podstawiamy nią samą, czyli nie zmieniamy wartości. Jeśli jest większa, obcinamy ją do 100.

  1. <?php
  2. $iInt = min( $iInt, 100 );
  3. ?>

Inne rozwiązanie, nieco czytelniejsze newbie.


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
m87
post 9.07.2008, 13:20:47
Post #8





Grupa: Zarejestrowani
Postów: 21
Pomógł: 4
Dołączył: 5.07.2008

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


  1. <?php
  2. class Mniejsze_Rowne
  3. {
  4. private $wartosc;
  5. private $max = 0;
  6.  
  7. function __construct($max)
  8. {
  9. $this->max = $max;
  10. }
  11.  
  12. function set($x)
  13. {
  14. if ($x <= $this->max)
  15. $this->wartosc = $x;
  16. else
  17. $this->wartosc = $this->max;
  18. }
  19.  
  20. function get()
  21. {
  22. return $this->wartosc;
  23. }
  24. }
  25.  
  26. $obiekt = new Mniejsze_Rowne(100);
  27. $obiekt->set(10);
  28. echo $obiekt->get(); // 10
  29. $obiekt->set(120);
  30. echo $obiekt->get(); // 100
  31. ?>


Obiekty są fajne winksmiley.jpg
Go to the top of the page
+Quote Post
scanner
post 9.07.2008, 13:22:47
Post #9





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Cytat(m87 @ 9.07.2008, 14:20:47 ) *
Obiekty są fajne winksmiley.jpg

A o KISS słyszałeś? Twój przykład jest bardzo fajny i w ogóle - ale to strzelanie do komara z armaty.


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
m87
post 9.07.2008, 13:31:18
Post #10





Grupa: Zarejestrowani
Postów: 21
Pomógł: 4
Dołączył: 5.07.2008

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


Cytat(scanner @ 9.07.2008, 14:22:47 ) *
A o KISS słyszałeś? Twój przykład jest bardzo fajny i w ogóle - ale to strzelanie do komara z armaty.


Słyszałem, ale przecież autor tematu nie powiedział co to za zmienna i do czego ją potrzebuje. Może ma więcej takich zmiennych albo inne które muszą być mniejsze od 200. Może zmienia jej wartość w 20 miejscach w kodzie, a za tydzień okaże się, że jednak zmienna miała być mniejsza od 120 winksmiley.jpg "Simple" to pojęcie względne, wszystko zależy od tego co autor chce uzyskać.
Go to the top of the page
+Quote Post
maxiu99
post 9.07.2008, 13:36:58
Post #11





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 6.10.2007

Ostrzeżenie: (10%)
X----


no napewno wartosc zmiennej nieulegnie zmmiane ze za tydzien będzie większa musiała byc! mam jedna taką wartosc uzywam ją ciągle na mojej stronce bardzo wazna zmienna

chyba zrobie tak jak scanner* powiedział zeby obcinac liczbe, zastanawiam sie jeszcze jak to zrobic, czy po prostu funkcje jezeli wynik większy niz 100 to wartosc tej zmiennej wynosi 100

Ten post edytował maxiu99 9.07.2008, 13:40:36
Go to the top of the page
+Quote Post
scanner
post 9.07.2008, 13:41:29
Post #12





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Ale po co używać OOP w sytuacji, jak cały problem jest rozwiązany w jednej krótkiej linijce kodu? Twoje argumenty mnie nie przekonują.
Hello world na 200 liniach już tez widziałem...

Toż tego nawet nie trzeba ubierać w funkcję, tylko ożywać on-demand.


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
maxiu99
post 9.07.2008, 13:49:52
Post #13





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 6.10.2007

Ostrzeżenie: (10%)
X----


sorki ale nie rozumiem, mógłbys jasniej?
Go to the top of the page
+Quote Post
scanner
post 9.07.2008, 14:14:18
Post #14





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Ty:
- Zaincludowanie pliku z definicją klasy (czas)
- Utworzenie obiektu (czas, pamięć)
- komplikacja kodu - konieczność stosowanie metod składowych obiektu, przepisywanie wartości do obiektu itd.

Ja:
- Użycie jednej konstrukcji wbudowanej w język wtedy, gdy jest ona konieczna.

Prościej się nie da.


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
maxiu99
post 15.07.2008, 11:21:42
Post #15





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 6.10.2007

Ostrzeżenie: (10%)
X----


hmm, ale najwazniejszego neirozumiem jak to zrobic teraz...
Go to the top of the page
+Quote Post
scanner
post 15.07.2008, 11:37:12
Post #16





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




W kazdym miejscu, w którym może zwiększyć się wartość tej Twojej zmiennej, a nie moze przekroczyć zadanej wartości, użyj:
  1. <?php
  2. $iInt = min( $iInt, 100 );
  3. ?>


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
maxiu99
post 15.07.2008, 20:12:45
Post #17





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 6.10.2007

Ostrzeżenie: (10%)
X----


iInt czy to jest z bazy danych ta zmienna? nazwa czy cos innego? bo niewiem czy dobze rozumiem
Go to the top of the page
+Quote Post
scanner
post 15.07.2008, 20:19:06
Post #18





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




To jest ta zmienna, o której piszesz na samym początku.
Nazwę $iInt zamń sobie na swoją.
Ludzie, myślcie, to nie boli!

Cytat
Witam, mam otóż taki mały problem z moją zmienną, chce zeby zmienna nigdy w zyciu niemogła wyniesc wiecej niz 100 i niewiem jak to zrobic...


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
maxiu99
post 16.07.2008, 14:47:08
Post #19





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 6.10.2007

Ostrzeżenie: (10%)
X----


wstawiłem tak jak mówiłes i zmiennej wartosc moze nadal wyniesc więcej niz 100...
Go to the top of the page
+Quote Post
Shili
post 16.07.2008, 14:49:47
Post #20





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


Pokaż kod, który wyprodukowałeś na podstawie tego podpowiedzianego przez scannera.
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
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 Wersja Lo-Fi Aktualny czas: 19.04.2024 - 08:02