Teen käyttäjän rekisteröinti-systeemin omalle kotisivulle, missä käyttäjä voi myös muokata jälkikäteen omat tiedot. (tiedot tallenetaan SQL tietokantaan)
Ongelmana on form lomakketietojen tarkistuksessa ja virheistä kertomisessa.
Ensin käyttäjä täyttää lomaken, sitten kun se lähetetään kone tarkistaa kaikki kentät, ja jos on virheitä, antaa käyttäjälle mahdollisuuden korjata virheet, eli palauttaa saman lomakkeen mutta täytettynä, ja virheelliset kohdat olisi merkitty punaisella fontilla, ja sivun ylälaidassa olisi kerrottu tarkemmin mahdollisista virheista, esim:
1. Tunnus "masa" on jo varattu
2. Sähköpostiosoitteesi on virheellisesa muodossa
3. Postinumerossa ei voi olla kirjaimia
jne..
Erilaisia tarkistuksia on siis aika paljon, ja haluaisin että, järjestelmä olisi helposti päivitettävissä, joten ratkaisu, missä on tuhat "if then" lausetta keskellä HTML koodia ei oikein houkuttele.
Olioilla se pitäisi rakentaa, mutta viikon suunnitelun jälkeen en ole vieläkään keksinyt mitään fiksua olioarakennetta järjestelmälle, ideat valitettavasti ovat lopussa.. :(
Tarkoituksena on siis oppia ja keksiä hyvä ratkaisu, eikä saada jotenkin tuo systeemi valmiiksi.
Ongelmana on form lomakketietojen tarkistuksessa ja virheistä kertomisessa.
Ensin käyttäjä täyttää lomaken, sitten kun se lähetetään kone tarkistaa kaikki kentät, ja jos on virheitä, antaa käyttäjälle mahdollisuuden korjata virheet, eli palauttaa saman lomakkeen mutta täytettynä, ja virheelliset kohdat olisi merkitty punaisella fontilla, ja sivun ylälaidassa olisi kerrottu tarkemmin mahdollisista virheista, esim:
1. Tunnus "masa" on jo varattu
2. Sähköpostiosoitteesi on virheellisesa muodossa
3. Postinumerossa ei voi olla kirjaimia
jne..
Erilaisia tarkistuksia on siis aika paljon, ja haluaisin että, järjestelmä olisi helposti päivitettävissä, joten ratkaisu, missä on tuhat "if then" lausetta keskellä HTML koodia ei oikein houkuttele.
Olioilla se pitäisi rakentaa, mutta viikon suunnitelun jälkeen en ole vieläkään keksinyt mitään fiksua olioarakennetta järjestelmälle, ideat valitettavasti ovat lopussa.. :(
Tarkoituksena on siis oppia ja keksiä hyvä ratkaisu, eikä saada jotenkin tuo systeemi valmiiksi.
Vastaukset 1
Vanhimmat
Eikö se lähtis vaikka ihan näinkin helposti liikkeelle:
Tiedostoon kayttaja_class.php
Class Kayttaja
{
var $kunnossa;
var $tunnus;
var $muita_haluamiasi_muuttujia;
function Kayttaja($tunnus,...muut muuttujat...,$kunnossa=1)
{
$this->tunnari = $tunnari;
}
function tarkistaTunnari()
{
// Tunnuksen tarkistusta.
// Jos tunnuksessa on jotain vikaa,
// tulostetaan virhe. Esim
// echo "Tunnuksessa saa olla vain alfanumeerisia merkkejä!";
// ja käännetään $kunnossa -bitti
// $this->kunnossa = 0;
}
// Tähän muut tarkistusfunktiot.
function onkoKunnossa()
{
return $this->kunnossa;
}
}
Nyt vain tarkistussivun alussa includoit kayttaja_class.php:
include "./kayttaja_class.php"
luot uuden käyttäjä-olion:
$testattava_kayttaja = new Kayttaja(argumentit lomakkeesta), ajat sille kaikki testit, voit vaikka luoda funktion testaaKaikkiOminaisuudet().
Seuraavaksi testaat, $testattava_kayttaja->onkoKunnossa() == 1 (// Tai true, en muista lennosta toimiiko). Mikäli toimii, kaikki on kunnossa ja voit lisätä uuden käyttäjän kantaan. Muuten tulosta lomake uudelleen ja siihen Valmiiksi käyttäjän viime kerralla antamat tiedot (Kauniisti tapahtuu esim luomalla annaTunnari()-funktio Kayttaja-olioon. Rumasti $testattava_kayttaja->tunnari).
Näin siis minä sitä lähtisin purkamaan. En tiedä vastaako tarpeitasi.