Olen tehnyt tietynlaisen tilauslomakkeen. Kun lomakkeella on jotain tilannut, pompsahtaa kaikki tiedot jotka voi sitten tulostaa. Tähän tietosivuun pitäisi saada vielä numero, joka on aina kasvanut yhdellä kun lomakkeelta on tehty tilaus.
Ei varmaan vaikea juttu, mutta jos joku viittis silti neuvoa!?
Kasvavan numeron voi tallentaa tiedostoon tai tietokantaan. Tiedoston avulla toteutus on yksinkertaisimmillaan tällainen (tiedostoon "numero.txt" täytyy olla kirjoitusoikeus):
<?php // luetaan numero tiedostosta $numero = file("numero.txt"); // tulostetaan numero echo "Nykyinen numero: $numero"; // tallennetaan uusi numero tiedostoon $numero++; $tiedosto = fopen("numero.txt", "w"); fputs($tiedosto, $numero); fclose($tiedosto); ?>
Jos tilaukset menevät tietokantaan, tilauksen numero voisi varmaan olla sama kuin sen tunnistenumero tietokannassa. Erillistä laskuria ei tarvita, jos tietokannan kentän määrittelee automaattisesti kasvavaksi.
Tiedostoon muuttuu joka kerta numeron tilalle "Array"???
Esimerkkiini jäi tosiaan virhe. Funktio file lukee tiedoston rivit taulukkoon, joten alku pitääkin tehdä näin:
$rivit = file("numero.txt"); $numero = $rivit[0];
Toinen tapa on käyttää suoraan file_get_contents-funktiota:
$numero = file_get_contents("numero.txt");
Aihe on jo aika vanha, joten et voi enää vastata siihen.