Autor Zpráva
Jam@
Profil *
Prosím o radu jak ošetřit proměnnou obsahující velké číslo pomocí INTVAL(), například rodné číslo? INTVAL() je max do hodnoty 2147483647. Díky za radu.

Toto je neprůchozí
$rc1 = (int)$_POST['rc'];
$rc2 = intval($_POST['rc'];
Joker
Profil
Jam@:
V první řadě je nejspíš chyba to vůbec dělat. Že v pojmenování nějaké položky je slovo „číslo“ ještě neznamená, že má být číselného typu.
Číselné datové typy jsou jen pro hodnoty, se kterými se dělají nějaké číselné výpočty (sčítání, odčítání, atd.)
Věci jako telefonní číslo, rodné číslo, IČO a podobně sice v názvu mají slovo „číslo“, ale v programech se s nimi typicky nezachází jako s čísly, ale jako s řetězci. De facto to jsou řetězce obsahující číslice.
Navíc rodné číslo v obvyklém formátu, např. „111111/111“, se ani na číslo správně nepřevede.

Pokud i přesto potřebujete tak velká čísla, šel by použít buď typ float, nebo rozšíření BC Math.
Camo
Profil
ctype_digit() ti overí či string obsahuje iba číslice 0-9. Samozrejme musíš odstrániť pred tým lomítko.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: