Vraag & Antwoord

Webprogrammeren & scripting

php gastenboek nieuw bericht bovenaan?

12 antwoorden
  • Mijn PHP script/gastenboek loopt als een trein (mede dankzij enkele mede forummers :smile: ) Maar nu is het zo dat alle nieuwe aantekeningen onderaan de pagina worden bijgeschreven terwijl het zo leuk zou zijn om hem juist steeds bovenaan bij te laten schrijven, zodat de laatste aantekening steeds bovenaan staat. Een vriend van me heeft dat, maar daar staat het gastenboek in een database, en mijn gastenboek is slechts een txt file die m.b.v. SSI ingevoegd word in een html pagina. Aangezien ik (nog) geen verstand heb van databases vroeg ik me af of het mogelijk was om het script zelf de bovenkant van het document op te zoeken en daar bij te schrijven. Weet iemand of dit mogelijk is en zo ja hoe?
  • Ok, gebruik dit principe: 1) Open de file alsvolgt: fopen($filename, "w+"); 2) Lees de inhoud in en stop deze in een varibele. 3) Plak bovenstaande variabele achter (!) de inhoud van het nieuwe bericht. 4) Schrijf de boel naar het bestand.
  • Ik heb het volgende gedaan: Om de oude waarde in variabele $oud te zetten: [code:1:f48db1fb18] $uitvoerbestand = &quot;comment.txt&quot;; $oud = fopen($uitvoerbestand, &quot;w+&quot;); fclose($oud); [/code:1:f48db1fb18] De nieuwe aantekening gaat in $nieuw: [code:1:f48db1fb18] $nieuw = &quot;&lt;font size=2&gt;&lt;b&gt;Reactie van $naam:&lt;/b&gt;&lt;br&gt;$reactie&lt;p&gt;; [/code:1:f48db1fb18] en dan samen opnieuw: [code:1:f48db1fb18] $bestandsindex = fopen($uitvoerbestand,&quot;a&quot;); fwrite($bestandsindex, &quot;$nieuw $oud&quot;); fclose($bestandsindex); [/code:1:f48db1fb18] Gevolg is dat de nieuwe aantekening het oude overschrijft, dus al wat over blijft is die ene nieuwe aantekening. Niet echt handig dus :smile: Verder verschijnt de geheimzinnige melding: Resource id #1 onder het bericht. _________________ My name is Bond! Consumenten Bond! <font size=-1>[ Dit bericht is bewerkt door: Gooly op 2002-05-01 13:48 ]</font>
  • [code:1:0058927cba] &lt;?php $nieuw = &quot;hallo&quot; . time(); //Lees oude data in $filename = &quot;comment.txt&quot;; $fd = fopen($filename, &quot;r&quot;); $oud = fread($fd, filesize($filename)); fclose($fd); //Schrijf nieuwe + oude data weg $fd = fopen($filename, &quot;w+&quot;); fwrite($fd, $nieuw . $oud); fclose($fd); ?&gt; [/code:1:0058927cba] [edit] Even de code aangepast zodat ie ook echt werkt :wink: De variabele $nieuw moet je natuurlijk aanpassen in datgene dat uit je formulier komt. [/edit] _________________ Waar blijft mijn glazen bol? <font size=-1>[ Dit bericht is bewerkt door: Bill Gates op 2002-05-01 14:09 ]</font>
  • Yep, ik heb de boel werkend. Ik zag al dat ik o.a. R en W verkeerd had gebruikt (betekend Read en Write neem ik aan?) Waarvoor stond de 'a' dan in mijn eerdere script? Ik ben hier n.l. begonnen met een scriptje dat ik ooit uit c!t heb gevist en dat inmiddels helemaal heb verhaspelt naar mijn eigen wensen. Ik begin het steeds leuker te vinden, dat PHP :smile: Op dit moment typ ik nog te vaak dingen over die ik niet begrijp, maar ik probeer er dan steeds maar achter te komen waarom dat nou zo moet. Vandaar dat me nu de die 'a' pas opviel, omdat ik r en w al doorheb hehe
  • Zie: http://www.phpfreakz.nl/artikelen.php?aid=24&amp;print=1 en hier: http://php.mirror.widexs.nl/manual/en/function.fopen.php
  • a staat voor append wat toevoegen betekend de andere twee had je goed gegokt.
  • [quote:db18535a4b] Op 01-05-2002 20:14 schreef mvwinger: a staat voor append wat toevoegen betekend de andere twee had je goed gegokt. [/quote:db18535a4b] Goed he? :smile:) Maar ben er inmiddels al achter. Ik zit al tot mijn oren in de sites die Bill net aangaf :smile: Tnx.
  • Die onderste link, hmm daar zal je wel vaker terecht komen als je echt in php wil gaan programeren, het adres is ook makkelijker te onthouden http://www.php.net/manual/nl/ of http://www.php.net/manual/en/ Maar erg nuttige handleiding ik kom er erg vaak. <font size=-1>[ Dit bericht is bewerkt door: mvwinger op 2002-05-02 10:39 ]</font>
  • nog makkelijker te onthouden: http://www.php.net/functienaam
  • Nog makkelijker: Een scriptlet: Deze moet je toevoegen aan je favorieten, dan kan je door iets te selecteren en er op te klikken dat ding opzoeken, of door er op te klikken en iets in te typen. [code:1:aa362cef34] javascript:Qr=document.selection.createRange().text;if(!Qr){void(Qr=prompt('Keywords...',''))}if(Qr)location.href='http://www.php.net/manual-lookup.php?pattern='+escape(Qr)[/code:1:aa362cef34] <font size=-1>[ Dit bericht is bewerkt door: mvwinger op 2002-05-02 12:44 ]</font>
  • Heeeey die is makkelijk :smile: Ik had al 2 van die dingen in mijn IE balk, eentje voor Google zoeken en eentje voor Babylon vertalen, maar deze is wel de handigste :smile: http://www.php.net kende ik trouwens al, daar kom ik vaak. Alleen is mij als beginner daar niet altijd alles duidelijk, zo probeerde ik laatst uit te zoeken wat het verschil was tussen de diverse verschillende replace functies (ereg- ergi- preg-), maar het verschil werd me na herhaaldelijk lezen niet erg duidelijk :smile: Maar ik kom der wel. Info genoeg.

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.