login  Naam:   Wachtwoord: 
Registreer je!
 Forum

hoe smilies in nieuwsscript?

Offline Ventura - 30/07/2005 20:21
Avatar van VenturaNieuw lid Hey,
ik had graag dit smiliescript (http://www.sitemasters.be/?pagina=scripts/scripts&cat=17&id=410) in dit nieuwssysteem (http://www.sitemasters.be/?pagina=scripts/scripts&cat=1&id=554) toegevoegd maar ik zou niet weten hoe dit te doen. Kan iemand mij helpen?

smiliescript:
  1. <?
  2.  
  3. function ReplaceSmilies($txt)
  4. { // starten v/d fucntie ReplaceSmilies, het vervangen van text door smilies.
  5.  
  6. $cDir = 'smilies';
  7. // map waarin de smilies staan...
  8. $cCodes = array(':d',':p',':)',':@',';)',':s');
  9. // array met de smilie codes.
  10. $cCodes2 = array(':D',':P',':-)',':-@',';-)',':S');
  11. // 2e array met codes, dezelfde, maar in andere vorm.
  12. $cSmilies = array('biggrin.gif','tong.gif','smile.gif','boos.gif','knipoog.gif','verward.gif');
  13. // De bestandsnamen ervan
  14.  
  15. // let erop dat je evenveel smilies hebt ingevoerd bij de bovenstaande 3 array's!
  16. // Als dat niet het geval is wordt er nu het een en ander aan geknipt...
  17.  
  18. if(count($cCodes) != count($cCodes2))
  19. {
  20. // De aantal smilies in $cCodes en $cCodes2 zijn niet evenveel.
  21. if(count($cCodes) > count($cCodes2))
  22. {
  23. $cAantal = count($cCodes2);
  24. }
  25. else
  26. {
  27. $cAantal = count($cCodes);
  28. }
  29. }
  30. else
  31. {
  32. $cAantal = count($cCodes);
  33. }
  34.  
  35. // nu dan het echte vervangen met een for-loop.
  36.  
  37. for($i=0;$i<$cAantal;$i++)
  38. {
  39. $txt = str_replace($cCodes[$i],'<img src="'.$cDir.'/'.$cSmilies[$i].'" border="0">',$txt);
  40. // vervangen van de smilies uit de 1e array.
  41. $txt = str_replace($cCodes2[$i],'<img src="'.$cDir.'/'.$cSmilies[$i].'" border="0">',$txt);
  42. // vervangen van de smilies uit de 2e array.
  43. }
  44. return $txt;
  45. }
  46. ?>


nieuwsscript:
  1. <?php ob_start(); ?>
  2. <style type="text/css">
  3. .nieuws_tabel {
  4. border: 1px solid #cccccc;
  5. background-color: #ededef;
  6. font-family: arial, verdana;
  7. font-size: 12px;
  8. width: 786px;
  9.  
  10. }
  11.  
  12. .nieuws_titel {
  13. border-bottom: 1px solid #cccccc;
  14. background-color: #cccccc;
  15. }
  16.  
  17. </style>
  18.  
  19. <?php
  20. $bestand = "nieuws.txt";
  21. $fp = fopen($bestand, "r+");
  22. $nieuwsberichten = stripslashes(fread($fp, filesize ($bestand))); //data eruit halen
  23. fclose($fp);
  24. $nieuwsbericht = explode("+£#~", $nieuwsberichten);
  25. if($_GET['action'] == 'post') { //als er op de admin pagina geklikt is
  26. echo "Admin pagina<br><br>";
  27. if(isset($_POST['posten'])) { //als er iets gepost is
  28. $nieuwsartikel = $_POST['titel']."!*&%".date("d-m-Y H:i")."!*&%".$_POST['bericht']; //wat er ingevoegd moet worden(incl. scheidingstekens)
  29. if(strlen($nieuwsberichten) > 0){ $oude_nieuwsberichten = "+£#~".$nieuwsberichten; } //als er meer dan 1 nieuwsbericht is
  30. $fp = fopen($bestand, "w");
  31. fputs($fp, $nieuwsartikel.$oude_nieuwsberichten); //weer invoegen met artikel en oude nieusberichen
  32. fclose($fp);
  33. header("location:nieuws.php");
  34. }
  35. else {
  36. if(isset($_POST['inloggen'])) { //als er ingelogd is.
  37. if($_POST['wachtwoord'] == 'toegang') { //hier wachtwoord instellen
  38. ?>
  39. <form method='post'>
  40. <table>
  41. <tr>
  42. <td><img src='bestand.gif'> Titel</td>
  43. <td><input type='text' name='titel' size='67'></td>
  44. </tr>
  45. <tr>
  46. <td><img src='bestand.gif'> Nieuwsbericht</td>
  47. <td><textarea name='bericht' cols='50' rows='10'></textarea>
  48. </tr>
  49. <tr>
  50. <td><!-- No contents --></td>
  51. <td><input type='submit' name='posten' value='Verzenden'>
  52. </tr>
  53. </table>
  54. </form>
  55. <?php
  56. }
  57. else { //anders, wachtwoord is fout
  58. echo "ww is fout";
  59. }
  60. }
  61. else { //anders, laat het inlogscherm zien
  62. ?>
  63. <form method='post'>
  64. <input type='password' name='wachtwoord' value=''> <input type='submit' name='inloggen' value='Log in'>
  65. </form>
  66. <?php
  67. }
  68.  
  69. }
  70.  
  71. }
  72. elseif($_GET['action'] == 'archief') { //laat alle berichten in archief zien
  73. if(isset($_GET['cat'])) {
  74. $nieuwsdeel = explode("!*&%", $nieuwsbericht[$_GET['cat']]);
  75. echo "<table class='nieuws_tabel' cellspacing='0' cellpadding='2'><tr><td class='nieuws_titel'><b>".$nieuwsdeel[0]."</b> | Gepost op:<b>".$nieuwsdeel[1]."</b></td></tr><tr><td>".nl2br($nieuwsdeel[2])."</td></tr></table><br>";
  76. }
  77. else {//alles niewsberichten in rijvorm leten zien(aanklikbaar)
  78. echo "<table class='nieuws_tabel' cellspacing='0' cellpadding='2'><td class='nieuws_titel'>Titel</td><td class='nieuws_titel'>Datum</td>";
  79. foreach($nieuwsbericht as $key => $value) { //waarden uitlezen
  80. $nieuwsdeel = explode("!*&%", $value); //split de titel,datum en bericht per nieuwssectie
  81. echo "<tr><td><img src='topic.gif'> <a href='nieuws.php?action=archief&cat=".$key."'>".$nieuwsdeel[0]."</a></td><td>".$nieuwsdeel[1]."</td></tr>";
  82. }
  83. echo "</table>";
  84. }
  85. echo "<br><img src='gebruiker.gif'> <a href='nieuws.php?action=post'>Admin</a> | <a href='nieuws.php'>Hoofdpagina</a>";
  86. }
  87. else { //laat 5 nieuwsberichten zien
  88.  
  89. if(count($nieuwsbericht) > 5){ $value = 5;}else{ $value = count($nieuwsbericht);}
  90. for($i = 0; $i < $value; $i++) { //waarden uitlezen
  91. $nieuwsdeel = explode("!*&%", $nieuwsbericht[$i]); //split de titel,datum en bericht per nieuwssectie
  92. echo "<table class='nieuws_tabel' cellspacing='0' cellpadding='2'><tr><td class='nieuws_titel'><img src='bestand.gif'> <b>".$nieuwsdeel[0]."</b> | Gepost op: <b>".$nieuwsdeel[1]."</b></td></tr><tr><td>".nl2br($nieuwsdeel[2])."</td></tr></table><br>";
  93. }
  94. echo "<img src='gebruiker.gif'> <a href='nieuws.php?action=post'>Admin</a> | <a href='nieuws.php?action=archief'>Archief</a>"; //admin page link
  95. }
  96. ?>


Thanx 

4 antwoorden

Gesponsorde links
Offline Stijn - 30/07/2005 23:39
Avatar van Stijn PHP expert van het smileyscript:
  1. <?
  2. return $txt;
  3. ?>


$txt is de variable van het tektvak van je nieuws pagina waar je het verhaal intikt dus:

Citaat:
<textarea name='bericht' cols='50' rows='10'></textarea>


name="txt" worden of $txt moet $bericht worden 

mvg stijn
Offline Maarten - 31/07/2005 00:02
Avatar van Maarten Erelid Euh stijn dat slaat nergens op.

Je moet gewoon die smileyfunctie over de string halen waar het nieuwsbericht in zit..

dus smilieprut($nieuwsbericht)

Offline Stijn - 31/07/2005 03:17
Avatar van Stijn PHP expert a oeps ik dacht gewoon dat het een code block was sorry 
Offline Ventura - 31/07/2005 12:19
Avatar van Ventura Nieuw lid ???
Ik snap het nog niet goed, kun je even dat stuk code posten.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.236s