Kezdőoldal » Számítástechnika » Programozás » Hogyan tudom PHP-ban megvizsgá...

Hogyan tudom PHP-ban megvizsgálni, hogy egy regisztrációs űrlapról kapott e-mail cím megfelelő-e?

Figyelt kérdés
Most tanulgatom az űrlapfeldolgozást, épp egy regisztrációs űrlapon dolgozom. Minden oké, egyedül az e-mail címet nem tudom rendesen lekezelni (arra gondolok, hogy pl. ne fogadjon el "valami@valami." vagy "valami,valami.com" vagy "@valami.com", etc... alakú inputokat). Ha leírná valaki, hogy miket vizsgáljak lépésről lépésre, azt megköszönném.

2013. júl. 11. 14:16
 1/4 anonim ***** válasza:
2013. júl. 11. 14:58
Hasznos számodra ez a válasz?
 2/4 anonim ***** válasza:

Másik megoldás lehet még, hogy részenként kéred be az e-mail címet. Így valahogy:

inputmező @ inputmező . inputmező

és akkor csak azt kell vizsgálnod, hogy mind a három inputnak van-e tartalma.


De el tudok képzelni olyat is, hogy feldarabolod az e-mail címet, először a kukac karakternél, aztán a második felét pont karakternél. És szintén sztringhosszokat vizsgálsz.


Harmadik ötlet, hogy legkérdezed az e-mail cím sztringben a kukac és az utolsó pont karakternek a pozícióját és akkor jó az e-mail cím, ha a kukac pozíciója kisebb, mint az utolsó pont pozíciója és az utolsó pont pozíciója kisebb mint a stringhossz.


Szóval sokféle megoldás létezik. Használd a PHP manual, onnan pofonegyszerű ezek alapján már.

Első válaszoló voltam.

2013. júl. 11. 15:03
Hasznos számodra ez a válasz?
 3/4 A kérdező kommentje:

Köszönöm a gyors választ :)

A preg_match nem jött össze, hibát írt ki a böngésző sajnos. Viszont a feldarabolásos módszer az már bevált ;)

2013. júl. 11. 15:23
 4/4 anonim válasza:

Kliens és szerver oldali szintaktikai ellenőrzést követően SMTP ellenőrzéssel.


Csak szintaktikai ellenőrzéssel, a valami.com-os címeket elég macerás kiszűrni, egy jó adatbázissal lehetséges még, de akkor inkább az SMTP-s ellenőrzés (ténylegesen nem kap levelet a felhasználó, csak beszélgetünk a szerverrel).


Lényegében megkérdezed a levelezőszervertől, hogy van-e ilyen felhasználója.


A valami.com-nál már eleve nem fogja találni a szervert és máris tudod, hogy nem jó cím, ha a szerver megvan onnantól az SMTP kódokból tudod mi a helyzet.


Ha a szerver létezik, akkor beköszönsz a szervernek, hogy szeretnél levelet küldeni, ő megkérdezi kinek, megadod a felhasználónevet (@ előtti rész) és jó esetben hajlandó megmondani, hogy létezik-e az e-mail cím. Miután megvan a válasz, nem küldessz levelet, hanem elköszönsz tőle.


Mivel van olyan levelezőszerver, aki nem hajlandó bárkinek megmondani, vagy nem mindig ad egyértelmű választ, vagy az ilyen "beköszönésnél" mindegyik felhasználóra azt mondja, hogy létezik és csak akkor ellenőriz, amikor tényleg kapna levelet, ezért az ilyen ellenőrzésnél célszerű, csak azokat visszautasítani, akiket valamilyen 500 feletti kóddal igazol vissza a szerver.


Akikre nem egyértelműen mondja, hogy léteznek, azoknál a visszapattanó levelekből derül ki, hogy létezik-e. Mindenesetre kellemesen le lehet szűrni a kamu e-mail címeket.


Google code-on van egy régi script rá (most is jó még, annyi, hogy megéri átírni, hogy többet várjon a válaszra, viszonylag sok szerver 30 másodperc alatt sem válaszol)

[link]


Egy rövid összefoglaló az STMP kódok jelentéséről:

[link]


Ennél bővebb infóért lásd az STMP szabványt.


Jah és mivel levelet küldünk a szervernek, ehhez a módszerhez kell tudnunk e-mailt küldeni.

2016. máj. 16. 18:32
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!