Eli löytyykö mistään hyvin yksinkertaista uutis scriptiä ilman MySQL tai jotain muita härpäkkeitä.
Löytyy.
"uutis scripti" ei sinällään kerro mitään muuta, kuin että sen pitäisi olla skripti ja sen pitäisi jollain tavalla liittyä uutisiin. Eli ehkäpä kerrot, mitä sen skriptin vähän tarkemmin ottaen pitäisi tehdä, niin pystyisi antamaan parempia neuvojakin.
Mutta silti jos googleen kirjoittaa "news script" niin ensimmäinen löytyvä sivu mainostaa ilmaista ja tietokantaa vaatimatonta "news scriptiä", joka tuossa (phpFastNews) tapauksessa tarkoittaa nähtävästi sivulla olevien tiedotteiden ylläpitämiseen tarkoitettua skriptiä. Eli jos tällaista haetaan niin vastaukseni ensimmäinen kappale olikin täydellinen vastaus esitettyyn kysymykseen.
Uskoisin että tässä tarkoitettiin nettisivuille laitettavaa "lootaa" jota voi scriptillä päivittää. Rickken korjatkoon jos olen väärässä.
Siis vaikka mennään sivulle lisaa.php ja siihen uutisen tiedot ja se lähettää ne eteenpäin uutiset.php:seen. Varmasti hyvin simppeli tehdä, mutta minulla ei tuo php homma toimi oikein.
Oletko varma, että tuohon EI tarvitse MySQL tietokantaa ja on muuten aika iso härpäke jne... toivoin jotain pientä minkä pystyy vähän kokeneempi väsertämään vartissa.
"You don't need MySQL, everything is stored in files"
Rickken kirjoitti:
toivoin jotain pientä minkä pystyy vähän kokeneempi väsertämään vartissa.
Tässä on noin vartissa kasattu härpäke:
uutiset.php:
<?php $uutiset = file ("uutiset.txt"); foreach ($uutiset as $uutinen) { if (!empty ($uutinen)) { list ($aika, $sisalto) = explode ("|", $uutinen, 2); $aika = date ("d.m.Y H:i", $aika); echo "<p><strong>$aika</strong>:<br />$sisalto</p>"; } } ?>
lisaa_uutinen.php:
<?php if ($_POST ["passu"] != "xyzzy") die ("Väärä salasana!"); $aika = time (); $uutinen = str_replace (array ("\n", "\r"), " ", $_POST ["uutinen"]); $filu = fopen ("uutiset.txt", "a"); fwrite ($filu, "$aika|$uutinen\n"); fclose ($filu); echo "Uutinen lisätty."; ?>
Tämän HTML-koodin voit liittää joko uutiset.php-tiedostoon tai laittaa ihan omalle sivulleen:
<form action="lisaa_uutinen.php" method="post"><p> Salasana:<br /> <input type="text" name="passu" /><br/> Uutinen:<br /> <textarea name="uutinen" rows="5" cols="40"></textarea><br /> <input type="submit" value="Lisää" /> </p></form>
Luo vielä tiedosto uutiset.txt ja anna sille tarvittavat oikeudet.
Thanks tälläistä juuri tarvitsinkin.
Tähän vielä pieni kysymys php stä. Eli, jos laittaa vaikka moi.php sivulla muuttujan nimeksi: jussi niin toimiiko se toisellakin sivulla, jos sen tulostaa vain $jussi ?
Olisiko liian vaikeaa selvittää asia kokeilemalla?
no mut jos se ei toimi ja räjäyttääkin intternetin.
Olen kännykällä ja sillä ei helppoa tehdä tuollaista.
Ihan yleisesti, php-muuttujien arvot ei säily latauskertojen välillä, joten jos teet seuraanvan php-tiedoston niin se tulostaa "TYHJÄ" joka kerta, vaikka lataisit sen miten monta kertaa tahansa.
Näin ollen jos määrittelet yhdessä tiedostossa muuttujalle $jussi arvon, niin sitä ei ole automaattisesti seuraavalla latauskerralla, olipa seuraavaksi ladattava skripti se sama tai jokin muu.
Rickken kirjoitti:
Tähän vielä pieni kysymys php stä. Eli, jos laittaa vaikka moi.php sivulla muuttujan nimeksi: jussi niin toimiiko se toisellakin sivulla, jos sen tulostaa vain $jussi ?
jos haluat että herra Jussi näkyy vain itsellesi, käytä sessioneja.
eka.php
<?php session_start(); $_SESSION['muuttuja'] = "Mr. Jussi"; print 'Teksti <i>"'.$_SESSION['muuttuja'].'"</i> näkyy myös <a href="toka.php">täällä.</a>'; ?>
toka.php
<?php session_start(); print $_SESSION['muuttuja']; // Tulostaa "Mr. Jussi" ?>
juu kiitoksia vastauksista. Mietin tässä jo vähän tuota php:n opettelemista kunnolla, vaikka se viekin minulta aikaa.
Miten tuosta vielä saisi sellaisen, että se poistaa edellinen san laittaa tilalle uuden ja ilman aika juttua?
Vaihda "a":n paikalle "w" ja ota echo-riviltä $aika ja vähän muutakin pois. Tuon verran voisit edes itse yrittää.
Aihe on jo aika vanha, joten et voi enää vastata siihen.