Olen luonut lomake.php sivun, joka lähetetään tarkistus.php sivulle; siellä tarkastetaan, että vaadittavat kentät on oikein. Molemmilla sivuilla on session, eli mikäli joltain lomake.php sivun kentästä puuttuu tieto annetaan headerilla virheilmoitus kyseisellä sivulla tieto. Sessionilla iakisemmat täytetyt kentät jäävät input kenttiin, mikä on hyvä juttu ettei tarvitse moneen kertaan kirjoitella samoja asioita kenttiin. Lomakkeen tiedot menevät tietokantaan oikein. Ongelma on sessionin takia siinä, että kun lomakkeen tiedot menevät tietokantaan en saa tyhjennettyä lomaketta reset-nappulalla. Olen yrittänyt unset muuttujaa käyttää, muuta ei ole pelittänyt. Eli mitä pitäisi laittaa lomake.php sivulle ja mitä tarkistus.php sivulle, jotta Reset-nappula toimisi?
marovius kirjoitti:
Olen yrittänyt unset muuttujaa käyttää, muuta ei ole pelittänyt. Eli mitä pitäisi laittaa lomake.php sivulle ja mitä tarkistus.php sivulle, jotta Reset-nappula toimisi?
session destroy?
En nyt tiedä sinun lomakkeesi tarvetta/tyyppiä, mutta tarkistus on kätevämpää ainakin minun mielestä jos se on samalla sivulla. purkkaviritys ihan vaan POST methodilla:
Kiitos vastauksesta. Tietoturvasyistä käytän sessionia ja käytän lomakkeen viennissä POST methodia, jolloin lomakeen tarkistus suoritetaan tarkitus.php sivulla. Purkkavirityksessä ei tyhjennä painike tyhjensi textarean mutta minulle se tyhjentänyt input kenttää.
aivan totta eli viritykseni reset-nappi ei lähetyksen jälkeen toimi enää kunnolla. Lisäsin siihen hieman javascriptia.
http://kasetti.propelli.cop.fi/fi/koodivinkit.
tuollai saadaan GET-methodilla ladattua sama sivu uudelleen niin ei lähetetä mitään tietoja --> kentät tyhjenee.
Olen saanut uusinta tietoa ongelmasta ja sen ratkaisusta: laitetaan normaalista <input type="reset" name=$muuttuja" value="Tyhjennä"> nappulaksi <input type="submit" name=$muuttuja" value="Tyhjennä"> ja seuraavalla sivulla tarkistetaan toiminto if($toiminto=="Tyhjennä")
{ --> suoritetaan session muuttujien poistokoodaus}
Kiitos vain ongelmanratkaisustasi!
Aihe on jo aika vanha, joten et voi enää vastata siihen.