miten voin tallentaa tiedostoja niin että ensimmäisen nimi on 1.txt toinen 2.txt kolmas 3.txt neljäskymmenestoinen 42.txt ja niin edelleen? kiitos vastauksista!
tiedoston nimeäminen juoksevana lukuna
4
397
Vastaukset
- Jaska Perusjaska
Ihan tuo onnistuu perus-toistorakenteita käyttämällä. Yksinkertaisimmillaan for-looppi joka tallentaa jokaisella kierroksella uuden tiedoston laskurin arvon mukaan.
Tuollaisella luupilla ei tosin tee juurikaan mitään. Taitaisi vain kaataa selaimet ja palvelimet...
Haluat varmaan ensin aina tarkistaa, mikä numero on viimeisin ja tallentaa uuden tiedoston lisäämällä arvoon yhden? Katsopa noita viestiketjuja vähän matkaan taaksepäin. Siellä oli muistaakseni vastaava kysymys vastauksineen.- ...
"Haluat varmaan ensin aina tarkistaa, mikä numero on viimeisin ja tallentaa uuden tiedoston lisäämällä arvoon yhden? Katsopa noita viestiketjuja vähän matkaan taaksepäin. Siellä oli muistaakseni vastaava kysymys vastauksineen."
Mutta onko tuo PHP:llä lainkaan mahdollista? Mitä tapahtuu jos kaksi vierailijaa tulee samalla hetkellä?
Esim. viimeisin tiedosto on tiedosto55.txt. PHP1 on instanssi joka palvelee käyttäjää 1, PHP2 on käyttäjää2. PHP1 etsii viimeisen tiedoston, samaan aikaan PHP2 tekee saman. Molemmat löytävät tiedosto55.txt, joten molemmat luovat tiedosto56.txt... Parhaimmassa tapauksessa toisen käyttäjän tiedosto siis häviää kokonaan. - Jaska Perusjaska
... kirjoitti:
"Haluat varmaan ensin aina tarkistaa, mikä numero on viimeisin ja tallentaa uuden tiedoston lisäämällä arvoon yhden? Katsopa noita viestiketjuja vähän matkaan taaksepäin. Siellä oli muistaakseni vastaava kysymys vastauksineen."
Mutta onko tuo PHP:llä lainkaan mahdollista? Mitä tapahtuu jos kaksi vierailijaa tulee samalla hetkellä?
Esim. viimeisin tiedosto on tiedosto55.txt. PHP1 on instanssi joka palvelee käyttäjää 1, PHP2 on käyttäjää2. PHP1 etsii viimeisen tiedoston, samaan aikaan PHP2 tekee saman. Molemmat löytävät tiedosto55.txt, joten molemmat luovat tiedosto56.txt... Parhaimmassa tapauksessa toisen käyttäjän tiedosto siis häviää kokonaan.Tiedostot ovat vähän hankalia juurikin tuosta syystä. Tietokanta on hieman varmempi tapa.
Tiedoston ainakin voi lukita scriptin ajon ajaksi. En tiedä mitä tapahtuu jos kaksi käyttäjää yrittää lukita tiedostoa täsmälleen samaan aikaan millisekunnin tarkkuudella. Luultavasti molemmat epäonnistuu ja tulee virheilmoitus. Mutta kyllä tuo ainakin vähentää ongelman mahdollisuutta.
Hyvin epätodennäköistähän tuo on, mutta jos käyttäjiä on paljon samaan aikaan, niin riski on toki olemassa.
Minulla on hyvin vähän (ts. ollenkaan) kokemusta tuollaisten julkisten megapalveluiden tekemisestä, joten en tämän parempia vinkkejä osaa antaa. Tähän mennessä kaikki ovat toimineet jopa ilman tiedostojen lukitsemistakin. Sen vain tiedän, että ruuhkat aiheuttavat monesti arvaamattomia ongelmia. - ...
Jaska Perusjaska kirjoitti:
Tiedostot ovat vähän hankalia juurikin tuosta syystä. Tietokanta on hieman varmempi tapa.
Tiedoston ainakin voi lukita scriptin ajon ajaksi. En tiedä mitä tapahtuu jos kaksi käyttäjää yrittää lukita tiedostoa täsmälleen samaan aikaan millisekunnin tarkkuudella. Luultavasti molemmat epäonnistuu ja tulee virheilmoitus. Mutta kyllä tuo ainakin vähentää ongelman mahdollisuutta.
Hyvin epätodennäköistähän tuo on, mutta jos käyttäjiä on paljon samaan aikaan, niin riski on toki olemassa.
Minulla on hyvin vähän (ts. ollenkaan) kokemusta tuollaisten julkisten megapalveluiden tekemisestä, joten en tämän parempia vinkkejä osaa antaa. Tähän mennessä kaikki ovat toimineet jopa ilman tiedostojen lukitsemistakin. Sen vain tiedän, että ruuhkat aiheuttavat monesti arvaamattomia ongelmia.Ei tarvitse edes olla 'megapalvelu'. Vaikka pieni käyttäjän internet-yhteyden tökähtäminen ja kaksi pyyntöä suoritetaankin samanaikaisesti.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 843232
- 751291
Kalasataman talossa lienee rakennusvirhe
Ei pitäisi olla mahdollista parvekkeen kautta tulipalon kiivetä katolle saakka kuin korkeintaan ylimmästä kerroksesta.1771220Kristillinen Kaste on syntisten kaste, ei itsensä uskoviksi julistaneiden kaste
Raamatun mukaan vain syntisyyden vuoksi kastetut saavat kasteen hyödyn, syntien anteeksisaamisen ja Pyhän Hengen lahjan2401030Kaipaatko nainen
Semmoista tosi hankalaa ja arkaa miestä? Pitäisitkö hänet aina omanasi jos saisit hänet? Miten huomioisit hänen herkkyyd103971Venäjä teki mahtavan iskun Kiovaan?
Miksi Ukraina ei kykene tekemään Moskovaan yhtä mahtavia iskuja.310932- 43849
Milloin ymmärsit
Milloin tunnistit, että sinulle kirjoitetaan ja kuka kirjoittaa? Tarkka päivämäärä ja kellonaika 😉 Önnönnöö, jos ei os78835- 95827
Nojatuoli !
Uutta kehiin, kun edellinen pikavauhtia täyttyi, pitäisikö kiittää näitä asian jouduttaneita? Pilvet leijaa, sadetta en124825