Miten käyttäjän rekisteröinti/tietojen varmistus kannattaisi toteuttaa? Kymmenen sisäkkäistä if/else lausetta ei vaikuta kovin fiksulta.
Pitäisi tarkistaa useita asioita:
- Onko tunnus tarpeeksi pitkä
- Onko tunnus jo rekisteröity
- Onko tunnuksessa laittomia merkkejä
- Onko salasana tarpeeksi pitkä
- Onko salasanassa laittomia merkkejä
- Onko salasanan varmistus sama kuin salasana
- Onko käyttäjän sähköpostiosoite tarpeeksi pitkä
- Onko osoitteessa laittomia merkkejä
- Onko osoite muutenkin järkevä
- jne. jen...
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
Tallena tidot
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
Pitäisi tarkistaa useita asioita:
- Onko tunnus tarpeeksi pitkä
- Onko tunnus jo rekisteröity
- Onko tunnuksessa laittomia merkkejä
- Onko salasana tarpeeksi pitkä
- Onko salasanassa laittomia merkkejä
- Onko salasanan varmistus sama kuin salasana
- Onko käyttäjän sähköpostiosoite tarpeeksi pitkä
- Onko osoitteessa laittomia merkkejä
- Onko osoite muutenkin järkevä
- jne. jen...
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
if (jotain) {
Tallena tidot
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
} else { vituiksi meni}
Vastaukset 1
Vanhimmat
Teet luokan(luokkia) jota käytät tietojen tutkimiseen tahi sitten function.
Esim function kanssa koodissa näin
if (tunnustutkija($tunnus,pituus)
echo 'tunnus kelpaa';
else
echo 'virheellinen tunnus';
Tuo functio palauttaa true/false. Tuollee koodisi pysyy selkeenä.
Tosin jos luokat/oliot tuttuja niin niillä se kannattaa tehdä. Teet perusluokan joka sisältää metodit pituuden, rekisteröity ja laittomien merkkien ... tutkimiseen sitten periytät tuon luokan vaik tunnustukija ja emailtutkija luokkaan.
Tosin jos tuo yllämainittu oli hepreaa niin voit yhdistää noita if lauseita.
if (strlen($tunnus) >= pituus && toka ehto)
Tosi jos kaikki ehdot toteutuu
if (strlen($tunnus) >= pituus || toka ehto)
Tosi jos jompakumpa tai molemmat
if (strlen($tunnus) >= pituus xor toka ehto)
Tosi jos jompakumpa, mut ei molemmat.
Noita ehtoja voi olla montakin
&& = and = ja
|| = or = tai