ik ben bezig met mijn gastboekje en dat gaat tot nu toe allemaal goed werken, ik heb het volgende php-scriptje:

<?php
function opslaan($naam)
{
$bestand = "praatje.txt";
if(file_exists($bestand))
{
$fp = fopen($bestand, "at");
fputs($fp, $naam);
fclose($fp);
}
else
echo "bestand bestaat niet";
}
opslaan("$naam<br>");
include("praatje.txt");
?>
en dit moest er nog achteraan:

ik wil graag nog dat ie tusssen de posts lijntjes gaat neerzetten

ik zou graag zien dat ie de nieuwste posts boven aan neerzet

het zou ook nog erg fijn zijn als er nieuwe pagina's gemaakt worden zodra er tien posts op een pagina staan en ie er dan ook paginanummers bijschrijft onderaan de pagina...

Is er iemand die een link weet naar een pagina waar dit duidelijk staat uitgelegd of is er misschien iemand die zich hierin wil verdiepen en het mij een keertje goed wil uitleggen?

Alvast bedankt!
<?php
function opslaan($naam)
{
$bestand = "praatje.txt";
if(file_exists($bestand))
{
$fp = fopen($bestand, "r+");
fputs($fp, $naam);
fclose($fp);
}
else
echo "bestand bestaat niet";
}

opslaan("$naam<br>\n");
opslaan("--------------<p>\n\n");

include("praatje.txt");
?>

De streepjes lijkt me duidelijk..

bij fopen heb ik van 'at' -> r+ gemaakt.. r+ zet de begin pointer aan het begin van het bestand. Er wordt dus geschreven aan het begin van het bestand.. Met a open je het bestand en zet je de pointer aan het einde van het bestand..

Dus de conslusie:

'a' schrijft aan het einde van het bestand
'w+' schijft aan het begin van het bestand

Je kunt trouwens alles hier lezen:
http://www.phphulp.nl/php/tutorials/index.php?cat=4&id=78&pid=145

de \n erachter maakt 'enters' in de tekst file.. \n staat voor \newline ;)
Bas, je bent geweldig... hier kan ik wat mee!!! :))) Dankjewel!
Okee, ik ben inmiddels zover dat het hele schrijven en lezen van mijn tekstbestandje een beetje naar mijn zin is... ik heb a+ veranderd in r+, maar dit lijkt niet te werken... mijn tekstfile maakt er dan hele rare dingen van, laat de eerste letters weg en overschrijft oude berichten enzo... Mijn scriptje ziet er inmiddels als volgt uit:

<?PHP
$naam = trim($naam);
$bericht = trim($bericht);
$date = date ("j - m - Y");
$tekst = $date . " van " . $naam . "<BR><BR>" . $bericht;
?>
<?php
function opslaan($tekst)
{
$bestand = "praatje.txt";
if(file_exists($bestand))
{
$fp = fopen($bestand, "a+");
fputs($fp, $tekst);
fclose($fp);
}
else
echo "Helaas... je praatje kan momenteel niet worden gepost...";
}
opslaan("$tekst\n");
opslaan("<hr>\n\n");
include("praatje.txt");
?>
(hmm... ligt het aan mijn appel c/appel v acties dat ie telkens het laatste stukje tekst erafmieterd?) Ik ben al aardig tevreden! :) Nu ben ik nog hard opzoek naar toch een manier om nieuwe berichtjes bovenaan te plaatsen, zonder dat er zo'n rare tekst weergave ontstaat. Daarnaast zoek ik me suf naar een oplossing om in dit script ervoor te zorgen dat de posts worden geteld en dat ie na tien posts een nieuw paginaatje maakt... is dit uberhaupt mogelijk in een tekstbestand? Ik weet dat het met xml wel werkt... Iemand die me kan helpen???
haaaai Hanneke!

a+ moet echt r+ zijn, kijk maar op www.php.net/fopen

elke keer als er een post komt kun je het wel bijhouden hoor. maak een bestand aan die 'counter.txt' heet en zet daar een 0 in, deze moet je ook chmodden

elke keer als een bericht wordt geplaatst, tel je het getal op, dit doe je zo:

<?
$bestand = "counter.txt";
$fp = fopen($bestand, r);
$count = fgets($fp, 4096);
fclose($fp);

$count = $count + 1;

$fp = fopen($bestand, w+);
fwrite($fp, $count);
fclose($fp);
?>

Hiermee hou je dus het aantal praatjes bij :) succes!!! doeiii
Haai Miranda,

Ja, ik weet het, van dat r+, heb ik ook hier op phphulp gevonden, op phpfreakz, op php.net... maar ik denk dat ik toch iets anders moet verzinnen om dat goed te laten werken.

Dat countscript ziet er wel uit alsof het redelijk gemakkelijk te gebruiken is, ik ga er even mee stoeien :) Pfff... ik moet nog een hoop leren, haha! Maar goed, niet voor nix boekjes over php gekocht! Hoe weet jij het eigenlijk allemaal?
Ik heb vooral op deze website heel veel goede tutorials gevonden. grotendeels dus van deze website geleerd en zelf ook afgekeken van wat scripts en dan overmaken :)

Reageren