Taustat:
Olen tehnyt ensimmäisenä PHP-ohjelmointi harjoituksenani skriptin, johon lainasin kirjautumisjärjestelmän Ohjelmointiputkan sivulta. (Kirjautuminen on vielä kesken, vaihdan mysql kirjautumiseen). Sivu löytyy täältä http://koti.mbnet.fi/tonde81/
Ongelma:
Törmäsin ongelmaan, johon en keksi hyvää ratkaisua. Tekemäni lomake kirjoittaa skripti.txt ja kayttajat.txt tiedostot, jotka käyttäjä voi halutessaan tallentaa. Ongelmana tässä on, jos useampi käyttäjä tallentaa skriptin samanaikaisesi, aiemmin tallennettu skripti luonnollisesti häviää.
Ratkaisuna en keksinyt näillä tiedoilla muuta, kuin, että teksti kirjoitettaisiin jokaiselle käyttäjälle eri tiedostoon, perustuen, esim session ID:hen ja poistettaisiin sessionin loputtua. Kuulostaa turhan hankalalta.
KYSYMYKSET:
Onko olemassa funktiota/käskyä, jolla saa tiedoston tallentumaan suoraan kiintolevylle, ilman, että teksitiedosto avataan selaimeen? Poistaisiko se ongelmani?
Onko muita hienoja toteutusehdotuksia?
Php:ssa on automatisoitu tuo käyttäjäkohtainen tiedostoon tallentaminen. Sitä kutsutaan sessioksi/istunnoksi.
Voit tallentaa esim. juuri kirjautumiseen tarvittavat tiedot sessioon. Php hoitaa itse roskien keruun, joten vanhentuneet sessiot poistetaan ajan kuluessa.
esim.
<?php session_start(); $_SESSION['user_id'] = 1;
Pitääpä testata osaako.
Aihe on jo aika vanha, joten et voi enää vastata siihen.