Kirjautuminen

Haku

Tehtävät

Keskustelu: Projektit: PHP-projekti: Äänestys

trilog [07.01.2010 16:28:00]

#

Tämä on osa PHP-projektia.

Tuli tämä äänestys värkkäiltyä valmiiksi. Tietokantojen kanssa olisi mennyt paljon yksinkertaisemmin, mutta tulipa nyt PHP:llä pitkästä aikaa hommailtua tiedostojenkin kanssa. Muutamia ominaisuuksia:

Vielä uupuu ominaisuus, jolla estetään saman henkilön useammat äänestykset. Tähän pitäisi keksiä jokin hyvä ja nopea ratkaisu.

Esimerkki-/testisivu ja lähdekoodit.

Teuro [16.01.2010 08:17:26]

#

Joitakin huomioita tuli mieleen kun tuota luin.

trilog [16.01.2010 10:51:33]

#

Kiitos kommenteista.

Teuro kirjoitti:

Kaikki funktiot kannattaa koota yhteen paikkaan

Funktiot yritin koota siten, että aanestys.php-tiedostossa on kaikki "elintärkeät" funktiot ja muissa tiedostoissa vain niissä yhteyksissä tarvittavat funktiot. Ehkä selvempi kuitenkin olisi, jos kaikki funktiot ovat yhdessä tiedostossa.

Teuro kirjoitti:

Tiedostojen käsittelyn voisi hoitaa aina samassa funktiossa.

Mitä tarkoitat? Tuossa tiedostojen käsittely hoidetaan niin sanotun I/O -funktion kautta. Systeemi voi aluksi näyttää sekavalta, mutta mielestäni se on ihan näppärä ratkaisu.

Teuro kirjoitti:

Äänestyksen luonti ei onnistunut omalla palvelimellani PHP versio 5.2.10

Minkälaisen virheen antaa?

Teuro kirjoitti:

hallinta.php funktiot voisivat antaa selkokielisen virheen vrt

Totta, korjailen virheenkäsittelyn paremmaksi lähipäivinä.

Teuro [16.01.2010 11:44:02]

#

trilog kirjoitti:

Mitä tarkoitat? Tuossa tiedostojen käsittely hoidetaan niin sanotun I/O -funktion kautta. Systeemi voi aluksi näyttää sekavalta, mutta mielestäni se on ihan näppärä ratkaisu.

Tarkoitan noita callback funktioita, koska niitä on minusta hirmu hankala lukea. Tosin johtunee siitä, että itse en niitä juurikaan käytä. Samoin tiedostokahvan passitus parametrinä on kummallista.

trilog kirjoitti:

Minkälaisen virheen antaa?

Antaa siis "Ännestyksen luonti epäonnistui, virhe 1" Tähän tuo seuraava kommentti onkin. Siis valmiin taulukon kautta tulostus, että mikä meni väärin. Ei se ole vaikea lukea koodista, mutta helpompaa tuo kehittäjälle olisi.

Minusta funktiot.php tiedosto on järkevämpi, koska tällöin kaikki yhteen kuuluvat asiat on yhdessä paikassa.

trilog [16.01.2010 12:25:56]

#

Teuro kirjoitti:

Tarkoitan noita callback funktioita, koska niitä on minusta hirmu hankala lukea. Tosin johtunee siitä, että itse en niitä juurikaan käytä. Samoin tiedostokahvan passitus parametrinä on kummallista.

Koodista olisi tullut monta kymmentä riviä pidempää, jos jokaisessa tiedostoa tarvitsevassa funktiossa tehtäisiin avaus-, sulkemis- ja lukitusrutiinit. Ylläpitokin nopeutuu huomattavasti, kun tiedostojen käsittely on keskitetty pääsääntöisesti yhteen funktioon. Olio-ohjelmoinnissahan tämä olisi ihan normaali periaate, tässä se on vain toteutettu callbackeilla.

trilog [24.01.2010 11:18:19]

#

Virheenkäsittelyä parannettu. Uuden version voi ladata ensimmäisen viestin linkistä.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta