Olen varkannyt pienta tietokantajutskaa PHP MySql ymparistossa. Nyt kun kayttaja muuttaa tietoja (web-sivun formin kautta), tulee nakyviin uusi sivu jossa teksti "onnistui" ja linkki alkuperaiselle sivulle jossa on tietojen listaus.
Haluaisin etta paluu tapahtuisi suoraan alkuperaiselle sivulle, jossa listaus olisi paivitetty ja jossa olisi teksti vaikka ylareunassa etta edellinen toiminto onnistui. Tama teksti voisi vaikka havitakin jonkun ajan kuluttua. (esim. Gmailissa on tallainen "statusteksti" keltaisella pohjalla ylareunassa..)
Miten tama toteutetaan, riittaako PHP:n keinot vai pitaako turvautua esim JavaScriptiin? Miten "kutsun" eli lataan tjsp toisen sivun yhdelta sivulta? Nyt olen tehnyt viritelmia includamalla alkup. sivun uudelle sivulle, mutta tuntuu silta kuin joku napparampikin keino pitaisi olla olemassa. En osaa googlata apua kun en tieda mita hakutermeja kayttaa, eli nekin vinkit taikka linkki riittaa mainiosti.
Haluaisin etta paluu tapahtuisi suoraan alkuperaiselle sivulle, jossa listaus olisi paivitetty ja jossa olisi teksti vaikka ylareunassa etta edellinen toiminto onnistui. Tama teksti voisi vaikka havitakin jonkun ajan kuluttua. (esim. Gmailissa on tallainen "statusteksti" keltaisella pohjalla ylareunassa..)
Miten tama toteutetaan, riittaako PHP:n keinot vai pitaako turvautua esim JavaScriptiin? Miten "kutsun" eli lataan tjsp toisen sivun yhdelta sivulta? Nyt olen tehnyt viritelmia includamalla alkup. sivun uudelle sivulle, mutta tuntuu silta kuin joku napparampikin keino pitaisi olla olemassa. En osaa googlata apua kun en tieda mita hakutermeja kayttaa, eli nekin vinkit taikka linkki riittaa mainiosti.
Vastaukset 3
Vanhimmat
Oletetaan että formi on sivulla index.php
Kun index.php kutsutaan ekan kerran, niin $_POST-muuttujista ei löydy etsimäämme muuttujaa ollenkaan ja siitä just tiedetään, että sivulle tullaan ekaa kertaa.
Käyttäjä saa eteensä täytettävän formin, jonka hidden-kenttään laitetaan nyt se muuttuja formia luotaessa
Käyttäjä täyttää sen formin ja painaa submittia, jolloin myös tuo hidden-kenttä lähtee tietojen mukana. Action kentässä voi taas olla se index.php.
Taas kutsutaan siis index.php, mutta nyt sieltä löytyykin se etsimämme kenttä $_POST['tila']
if($_POST['tila'] == 'lahetys')
{
tiedetaan etta käyttäjä lähetti just tiedot
tarkistetaan arvot ja lisätään tietokantaan
jos kaikki menee ok, niin piirretään taas käyttäjälle se formi "Onnistui"-teksteineen ja laitetaan hidden kentän arvoksi 'talletettu' tai jos tilaa ei enää tarvita, niin ei laiteta koko kenttä enää siihen formiin. Seuraava submit olis taas kuin tultas ekaa kertaa koko sivulle
}
Pitaa ehtia kokeilla pian, mutta eikohan nailla ohjeilla jo onnistu.