login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Smilies

Offline WMtools - 24/08/2005 11:27 (laatste wijziging 24/08/2005 11:41)
Avatar van WMtoolsNieuw lid hoi,
  1. <?php
  2. function smilie( $bericht, $site ) {
  3. $select = mysql_query( "SELECT * FROM smilies " )or die( mysql_error( ) );
  4. $count = mysql_num_rows( $select );
  5. if( $count == true ) {
  6. WHILE( $list = mysql_fetch_assoc( $select ) ) {
  7. $explode = explode( ',', $list['code'] );
  8.  
  9. if( in_array( $bericht, $explode ) == true ) {
  10. $bericht = str_replace( $explode, '<img border="0" src="' . $site . '/afbeeldingen/smilies/' . $list['img'] . '">', $bericht );
  11. }
  12. }
  13. }
  14. return $bericht;
  15. }
  16. ?>

In de database bij code staat er dit: (y),(Y)

Dit heb ik ook in een bericht, Waarom doet die dan niet vervangen door een smilie?

Gr, jeffrey

8 antwoorden

Gesponsorde links
Offline Tuinstoel - 24/08/2005 11:56
Avatar van Tuinstoel PHP expert Omdat str_replace hoofdlettergevoelig is. Als je server php5 heeft dan kun je str_ireplace() gebruiken, anders moet je toch eregi_replace() gebruiken.
Offline Ibrahim - 24/08/2005 12:00 (laatste wijziging 24/08/2005 12:01)
Avatar van Ibrahim PHP expert Vervang dit:

  1. <?php
  2. function smilie( $bericht, $site ) {
  3. $select = mysql_query( "SELECT * FROM smilies " )or die( mysql_error( ) );
  4. $count = mysql_num_rows( $select );
  5. if( $count == true ) {
  6. WHILE( $list = mysql_fetch_assoc( $select ) ) {
  7. $explode = explode( ',', $list['code'] );
  8.  
  9. if( in_array( $bericht, $explode ) == true ) {
  10. $bericht = str_replace( $explode, '<img border="0" src="' . $site . '/afbeeldingen/smilies/' . $list['img'] . '">', $bericht );
  11. }
  12. }
  13. }
  14. return $bericht;
  15. }
  16. ?>


met dit:

  1. <?php
  2. function smilie( $bericht, $site ) {
  3. $select = "SELECT * FROM smilies";
  4. $sResult = mysql_query($select) or die(mysql_error());
  5. $count = mysql_num_rows($sResult);
  6. $count = mysql_num_rows($sResult);
  7. if( $count == true ) {
  8. while($list = mysql_fetch_assoc($sResult)){
  9. $explode = explode( ',', $list['code'] );
  10.  
  11. if( in_array( $bericht, $explode ) == true ) {
  12. $bericht = eregi_replace( $explode, '<img border="0" src="' . $site . '/afbeeldingen/smilies/' . $list['img'] . '">', $bericht );
  13. }
  14. }
  15. }
  16. return $bericht;
  17. }
  18. ?>
Offline WMtools - 24/08/2005 12:05 (laatste wijziging 24/08/2005 12:06)
Avatar van WMtools Nieuw lid Dan doet die het nog niet:(

Edit:
Dit staat in de database bij men bericht:
(y) , (Y)

en dit in de database van de smilie:
(y),(Y)
Offline Ibrahim - 24/08/2005 13:09
Avatar van Ibrahim PHP expert probeer eens:
$bericht = eregi_replace("(y)", "<img src=\"../smiley.gif\">", $bericht);

Offline WMtools - 24/08/2005 16:25 (laatste wijziging 24/08/2005 16:45)
Avatar van WMtools Nieuw lid Ik heb het uitgebrobeerd en if( in_array...
weggehaald en krijg k een lang iets wat niet bepaald klopt, alle <img tags die in de db staan:S
Offline Ibrahim - 24/08/2005 16:52
Avatar van Ibrahim PHP expert probeer i.p.v. die functie eens dit:

$bericht = eregi_replace("(y)", "<img src=\"../smiley.gif\">", $bericht);
Offline WMtools - 24/08/2005 17:13
Avatar van WMtools Nieuw lid Gedaan, dan werkt het niet:s...
Offline Ibrahim - 24/08/2005 18:16
Avatar van Ibrahim PHP expert
  1. $bericht = str_replace("(y)", "<img src=\"../hoofdmap/evt.submappen/smileynaam.gif\">", $bericht);


zo misschien?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.197s