login  Naam:   Wachtwoord: 
Registreer je!
 Scripts:

Scripts > PHP > Nieuwssystemen > Simpel nieuwsysteem met admin

Simpel nieuwsysteem met admin

Auteur: remy - 19 november 2004 - 15:09 - Gekeurd door: Dennisvb - Hits: 24863 - Aantal punten: 3.87 (15 stemmen)



Dit is een simpel nieuwssysteem zonder mysql.
Je kunt de opmaak aanpassen met een style sheet (css).
Op de nieuwspagina komen maximaal 5 berichten te staan, en er zit een archief bij, voor als er meer dan 5 berichten zijn.
Hier komen dan alleen de berichten in die niet op de nieuwspagina staan.


ik ben uitgegaan van de index, als je dit zelf niet doet, moet je de link even aanpassen.

Code:
nieuws.php

  1. <?php
  2. $file="nieuws.txt"; // In dit stuk wordt nieuws.txt geopend en de inhoud eruit gehaald.
  3. $fp=fopen($file, "r");
  4. $data=fread($fp, filesize($file));
  5. fclose($fp);
  6. $data = nl2br($data);
  7.  
  8. $alleberichten = count_chars($data);
  9. $heelbericht=explode("*!&",$data); //split hier de berichten met scheidingsteken (*!&)
  10.  
  11. $start=0;
  12. $eind=$alleberichten[ord("*!&")]; //tellen maximale berichten
  13. if($eind>=5) // if lus, er mogen maar 5 berichten worden weergegeven op de nieuwspagina
  14. {
  15. $var=5;
  16. }
  17. else
  18. {
  19. $var=$eind;
  20. }
  21.  
  22. while($start<$var) //while lus, om de nieuwsberichten te laten zien.
  23. {
  24. $deelbericht=explode("^%$",$heelbericht[$start]);
  25. echo "<table class=\"hoofdinhoud\" cellspacing=0 cellpadding=2><tr><td class=\"tdinhoud\"><img src=bestand.gif> <b>".$deelbericht[0]."</b> | gepost op: ".$deelbericht[2]."</td></tr><tr><td class=\"inhoudonder\">".$deelbericht[1]."</td></tr></table><br>";
  26. $start++;
  27. }
  28.  
  29. echo "<a href=index.php?pagina=nieuwsarchief>>> bekijk niewsarchief</a>";
  30.  
  31. ?>


nieuwsarchief.php

  1. <?php // dit script is beina hetzelfde als de nieuwspagina, het enig wat anders is, is dat hier de overiger berichten staan, dus als er meer dan 5 nieuwsberichten zijn.
  2. echo "<b>dit is het nieuwsarchief<b><br><br>";
  3. $file="nieuws.txt";
  4. $fp=fopen($file, "r");
  5. $data=fread($fp, filesize($file));
  6. fclose($fp);
  7. $data = nl2br($data);
  8.  
  9. $alleberichten = count_chars($data);
  10. $heelbericht=explode("*!&",$data);
  11.  
  12. $start=5;
  13. $eind=$alleberichten[ord("*!&")];
  14.  
  15. if($eind <5) // kijk hier of er al 5 nieuwsberichten zijn, zo niet:
  16. {
  17. echo "Er zijn nog geen oude nieuwsberichten, alle nieuwsberichten staan op de vorige pagina.<br><br>";
  18. }
  19. else
  20. {
  21. while($start<$eind) // berichten laten zien.
  22. {
  23. $deelbericht=explode("^%$",$heelbericht[$start]);
  24. echo "<table class=\"hoofdinhoud\" cellspacing=0 cellpadding=2><tr><td class=\"tdinhoud\"><img src=bestand.gif> <b>".$deelbericht[0]."</b> | gepost op: ".$deelbericht[2]."</td></tr><tr><td class=\"inhoudonder\">".$deelbericht[1]."</td></tr></table><br>";
  25. $start++;
  26. }
  27. }
  28.  
  29. echo "<a href=index.php?pagina=nieuws> << terug naar nieuwsoverzicht</a>";
  30.  
  31. ?>


nieuwstoevoegen.php

  1. <?php
  2. ob_start(); // admin pagina
  3.  
  4. echo "Admin pagina<br><br>";
  5. if(isset($_COOKIE['berichtadmin'])) //cookie setten
  6. {
  7. echo "Voeg een nieuwsbericht toe";
  8.  
  9. $titel=$_POST['titel'];
  10. $bericht=$_POST['bericht'];
  11.  
  12. if(isset($_POST['plaatsen']))
  13. {
  14. if(strlen($titel)<2) //controleer of er een titel is ingevuld
  15. {
  16. $error="Het bericht heeft geen titel.<br>";
  17. }
  18. else
  19. {
  20. $invoegen = $titel."^%$";
  21. }
  22.  
  23. if(strlen($bericht)<6)
  24. {
  25. $error.= "U heeft geen bericht ingevuld.<br>";
  26. }
  27. else
  28. {
  29. $invoegen.= $bericht."^%$";
  30. }
  31.  
  32. if(isset($error)) //als er een error is, dus als er iets niet is ingevuld, voer dit uit
  33. {
  34. echo "Het bericht kan om de volgende reden niet worden verwerkt:<br><br>";
  35. echo $error;
  36. }
  37. else
  38. {
  39. $invoegen.= date("d-m-Y H:i")."^%$*!&"; //datum invoegen
  40. $file="nieuws.txt";
  41.  
  42. if(file_exists($file))
  43. {
  44. $fp=fopen($file, "r");
  45. $data=fread($fp, filesize($file));
  46. fclose($fp);
  47. }
  48.  
  49.  
  50. $fp=fopen($file, "w");
  51. flock($fp,LOCK_EX);
  52. fputs($fp,$invoegen); //nieuwsbericht invoegen
  53. if(isset($data)) fputs($fp,$data);
  54. flock($fp,LOCK_UN);
  55. fclose($fp);
  56.  
  57. setcookie("berichtadmin","ja", time()-3600);
  58. echo "<a href=\"index.php?pagina=nieuws\">ga naar de nieuwspagina</a>"; // je kunt hier ook location("header... gebruiken indien je ob_start gebruikt.
  59.  
  60. }
  61. }
  62. else
  63. { //laat formulier zien.
  64. ?>
  65.  
  66.  
  67. <form method="post">
  68. <table>
  69. <tr>
  70. <td>
  71. Titel:
  72. </td>
  73. <td>
  74. <input type="text" name="titel">
  75. </td>
  76. </tr>
  77. <tr>
  78. <td>
  79. Bericht:
  80. </td>
  81. <td>
  82. <textarea name="bericht" cols="25" rows="4"></textarea>
  83. </td>
  84. </tr>
  85. <tr>
  86. <td>
  87. <input type="submit" name="plaatsen" value="Plaats bericht">
  88. </td>
  89. <td>
  90. </td>
  91. </tr>
  92. </table>
  93. </form>
  94.  
  95. <?php
  96. }
  97.  
  98.  
  99.  
  100. }
  101. else //vul hier het wachtwoord in als er geen cookie is.
  102. {
  103. if(isset($_POST['verzenden']))
  104. {
  105. if($_POST['wachtwoord'] == 'VUL HIER JE WACHTWOORD IN!!!') //hier je wachtwoord invoeren
  106. {
  107. echo "goed";
  108. setcookie("berichtadmin","ja");
  109. echo "<a href=index.php?pagina=nieuwstoevoegen>ga verder</a>";
  110. }
  111. else
  112. {
  113. echo "Je hebt het wachtwoordt niet goed ingevuld, ga <a href=javascript:history:back(1)>terug</a> en probeer opnieuw.";
  114. }
  115. }
  116. else
  117. { //laat formulier zien waar je je wachtwoord moet invullen.
  118. ?>
  119. <form method=post>
  120. <input type="password" name="wachtwoord">
  121. <input type="submit" name="verzenden" value="login">
  122. </form>
  123. <?php
  124. }
  125. }
  126. ?>


nieuws.txt
Download code! Download code (.txt)

 Bekijk een voorbeeld van dit script!
 Stemmen
Niet ingelogd.

 Reacties
Post een reactie
Lees de reacties (41)
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.057s