Tietääkö joku tavan, jolla voi PHP:llä tarkistaa että puhelinnumero on olemassa? Teen soittopyyntölomaketta, ja olisi kätevä ominaisuus tarkistaa puhelinnumeron olemassaolo. Muotohan on helppo tarkistaa vaikka säännöllisillä lausekkeilla:
preg_match("/^(0|\+358)[0-9]{10,11}$/", $numero);
Mutta onko olemassa jotain rekisteriä, josta numeron voi tarkistaa, ja mahdollisesti vielä helposti purettavassa muodossa?
Suomessa ylipäänsä numerotietoja ei saa ilmaiseksi. Erilaisia maksullisia numerotiedustelupalveluita on vaikka kuinka, mutta niistä ei tietenkään löydy salaisia numeroita. En usko, että operaattorit muutenkaan antaisivat tietoa, mitkä heidän omistamistaan numeroista ovat asiakkaiden käytössä tietyllä hetkellä. Hyvin nopeasti etsimällä löytyi mm. tällainen tiedonmuru.
Säännöllinen lausekkeesi ei ole kovin onnistunut: se hylkää nyt lähes kaikki tavalliset puhelinnumerot. +358:n jälkeen tulee yleensä 7–9 numeroa. On myös monia lyhyempiä ja pidempiä numeroita, joten älä tee turhan tiukkoja tarkistuksia. Monethan kirjoittavat myös kaiken maailman välejä, viivoja ja sulkuja numeroihinsa, joten itse en ehkä tarkistaisi kuin sen, että kentässä on yhteensä edes muutama numero.
Vaihtoehdot taitavat olla jollain SMS-apilla testiviestin lähetys tai purkkaviritys johonkin numeropalveluun (esim. Fonecta). En kyllä itse lähtisi noin pitkälle validoimaan ellei oikeasti ole jotain painavaa syytä.
Metabolix kirjoitti:
En usko, että operaattorit muutenkaan antaisivat tietoa, mitkä heidän omistamistaan numeroista ovat asiakkaiden käytössä tietyllä hetkellä.
Kyllähän ne antaa. Soittaa vaan numeroon -> jos tulee "valitsemanne numero ei ole käytössä" niin ei ole käytössä, muussa tapauksessa on.
Grez kirjoitti:
Soittaa vaan numeroon -> jos tulee "valitsemanne numero ei ole käytössä" niin ei ole käytössä, muussa tapauksessa on.
Joo, kätevä ratkaisu. Osaatko vielä sanoa, mitä tapahtuu sellaisille prepaid-liittymille, jotka on jo toimitettu kioskille mutta joita ei ole vielä myyty?
No kyse oli siitä että antavatko operaattorit ko. tietoa vai eivät. Selvästikään se ei ole mikään salainen tieto mitä operaattorit eivät voisi antaa.
Toisin sanoen uskoisin että jos listat käytössä olevista numeroista haluaisi operaattoreilta saada niin se ei vaatisi kuin sopimusneuvottelut ja sopivan määrän euroja latomisen tiskiin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.