Typy danych |
Typy danych |
3.11.2015, 20:02:00
Post
#1
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 0 Dołączył: 16.11.2011 Ostrzeżenie: (0%) |
Witam serdecznie,
bawię się z integracją mojej aplikacji z Allegro. Pojawia się problem jeśli chcę wystawić komentarz. Aby to zrobić muszę podać w zmiennej nr aukcji. Aukcja ma numer dość spory np 5707020005. Jak wprowadzam tą wartość to otrzymuje w danych zwracanych info że wprowadzałem wartość 2147483647, czyli maksymalną wartość ze zmiennej INT. Podejrzewam że muszę wprowadzić jakoś wartość typu long, i pytanie jak to zrobić? |
|
|
3.11.2015, 20:32:05
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) |
W PHP typ INT ma zmienną długość (SIC!) 4 lub 8 bajtów w zależności od platformy. Brak też typu LONG (SIC x2!). Najprawdopodobniej powinieneś podawać nr aukcji jako tekst, tj. '123456789', nie 1234566789.
|
|
|
4.11.2015, 08:10:04
Post
#3
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Tak jak @Crozin napisał. W bazie możesz spokojnie zapisać nr. aukcji jako unsigned INT lub long int, a w PHP bezpieczniej jest operować na string.
Trzeba o tym pamiętać, bo potem będą kwiatki z tego. |
|
|
6.11.2015, 14:40:03
Post
#4
|
|
Grupa: Moderatorzy Postów: 6 070 Pomógł: 860 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza |
Wtrącę swoje 3 grosze: tak duże numery możesz w PHP rzutować na float, a nie int. Przynajmniej w przypadku PostgreSQL spotkałem się z sytuacją, gdzie użycie '123' w warunku było dość wyraźnie wolniejsze niż 123.
|
|
|
6.11.2015, 18:35:14
Post
#5
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 0 Dołączył: 16.11.2011 Ostrzeżenie: (0%) |
@phpion, float pomogło. Dzięki
|
|
|
Wersja Lo-Fi | Aktualny czas: 28.04.2024 - 10:22 |