Eli semmonen ongelma, että vain uusin uutinen tallentuu uutiset.txt tiedostoon, vaikka vanhemmat pitäisi lisätä tiedoston loppuun.
<?php session_start(); $tunnus = $_SESSION["sess_tunnus"]; if ($tunnus == "Bagard") { $otsikko = $_POST["otsikko"]; $uutinen = $_POST["uutinen"]; $kirjoitus = fopen("uutiset.txt", "w"); $vanhat = file("uutiset.txt"); $aika = time(); $aika = date("d.m.Y \- H:i", $aika); fwrite($kirjoitus, "<tr><td width=\"100%\">\n"); fwrite($kirjoitus, "<font face=\"Verdana\" style=\"font-size: 11px\"><u><b>".$otsikko."</b></u><br></font>\n"); fwrite($kirjoitus, "<font face=\"Verdana\" size=\"1\">Kirjoittanut: ".$tunnus." - ".$aika."</font></td>\n"); fwrite($kirjoitus, "</tr><tr><td width=\"100%\"><font face=\"Verdana\" size=\"1\">".$uutinen."</td></tr><tr><td width=\"100%\" height=\"20\"></td></tr>\n"); for($i=0;$i<count($vanhat);$i++) { fwrite($kirjoitus, trim($vanhat[$i])."\n"); } fclose($kirjoitus); include("index.php"); } else include("index.php"); ?>
Hmm.. Vähän epäselvä kysymys, mutta vastaan jotain :)
Taulukon saa siis käännettyä funkkarilla array_reverse() toivottavasti tuo jotain auttaa ;D
Edit: minun 123. viesti ja nyt viestieni määrä koko putkan viesteistä on 0,4%.. 1337
Taitaapi johtua tuosta, että tuossa fopen-funktion "kirjaimena" on w. Se siis tarkoittaa, että se kirjoitta vain sen tiedon, mitä siihen silloin kirjoitetaan ja pyyhkii kaiken vanhan pois. Vaihda se a:ksi, niin pitäisi alkaa wörkkimään. Sitten uudet tiedot menee filun loppuun.
jep, ongelma on juuri tuo. Vaihda se moodi a:ksi, ja tiedostoon kirjoitetaan eri tavalla: r = vetäisee uuden päälle aina kun lisätään, a = jatkaa uudelle riville seuraavat tiedot.
Muuten näyttäis olevan ihan oikein, mut sulla on nuo kaks riviä väärinpäin. Eli tyhjennät tiedoston ennenku yrität hakea niitä vanhoja viestejä taulukkoon. Eli vaihdat päikseen rivit
$kirjoitus = fopen("uutiset.txt", "w");
$vanhat = file("uutiset.txt");
toisin päin, sit skulaa :)
Eikä noita tyylittelyjä tarvitse jokaiseen uutiseen erikseen pistää kun sen voi kätevämminkin hoitaa php:llä ajon aikana. Uutistiedostos vois lukee vaa et
Lisääjä|aika|uutinen tai mitä tietoja tahotkaan?
Kiitos Irksome, en huomannutkaan että ne olivat väärinpäin =)
Nyt olisi vielä semmonen ongelma että jos uutiseen laittaa jotain erikoismerkkejä, esim " tai ', niin silloin valmiiseen uutiseen tuleekin \" tai \'. Miten tuon saisi korjattua?
Sit ku ajat ne uutiset näkyviin siitä tiedostosta ni kuleta ne stripslashes() -funktion läpi. Se poistaa kenoviivat PHP:n erikoismerkkien edestä. Ainakin muistaakseni... =)
Kiitos kaikille avusta, nyt toimii hienosti koko systeemi! =)
Aihe on jo aika vanha, joten et voi enää vastata siihen.