Autor Zpráva
pokerface
Profil *
Dobrý den

má vytvořený následující kód na převod textových smajlíků na grafické

<?php
  $replace = array();
  $replace[':-D']='<img src="smajlici/smajlik1.gif">';
  $replace[':oD']='<img src="smajlici/smajlik2.gif">';
  $replace[':-))']='<img src="smajlici/smajlik3.gif">';
  $replace[':-)']='<img src="smajlici/smajlik4.gif">';
  $replace[':)))']='<img src="smajlici/smajlik5.gif">';
  $replace[':-)))']='<img src="smajlici/smajlik6.gif">';
  $replace[':)']='<img src="smajlici/smajlik7.gif">';
  $replace[':-(']='<img src="smajlici/smajlik8.gif">';
  
  function replace_smile ($zprava)
  {
    global $replace;
    reset($replace);
    while(list($key,$val) = each($replace))
      $zprava = str_replace($key,$val,$zprava);
    return $zprava;
  }
?> 


když ale zavolám funkci replace_smile()
tak mi to napíše

Warning: reset() [function.reset]: Passed variable is not an array or object in C:\Program Files\VertrigoServ\www\replacesmileys.php on line 15

Warning: Variable passed to each() is not an array or object in C:\Program Files\VertrigoServ\www\replacesmileys.php on line 16

poraďte prosím co stím
slovakCZ
Profil
ja to resim takto.. smajliky mam ulozene v databazi:

/* nahradime smajliky */
$querySmiles = mysql_query("SELECT text, image FROM $t_smiles") or die(mysql_error());
while($s = mysql_fetch_object($querySmiles)){
	$body = str_replace($s->text, ' <img src="'.$baseurl.'assets/images/smiles/'.$s->image.'" alt="'.$s->text.'" class="smile" /> ', $body);
}

kde v sloupci image je ulozen nazev obrazku (napr smajlik1.png) a v sloupci text je ulozena jeho textova varianta (napr :-0)
a v promenne $body mam obsah zpravy, takze napr: "ahoj :-) toto je novy komentar. zkousim smajliky... :-) :-[ :-0...."
treba ti to k necemu pomuze :)
ShiraNai7
Profil
Co takhle?

function replace_smileys($zprava)
{

  // definujeme vsechny smajliky
  static $smileys = array (
    ':-D' => '<img src="smajlici/smajlik1.gif">',
    ':oD' => '<img src="smajlici/smajlik2.gif">',
    ':-))' => '<img src="smajlici/smajlik3.gif">',
    ':-)' => '<img src="smajlici/smajlik4.gif">',
    ':)))' => '<img src="smajlici/smajlik5.gif">',
    ':-)))' => '<img src="smajlici/smajlik6.gif">',
    ':)' => '<img src="smajlici/smajlik7.gif">',
    ':-(' => '<img src="smajlici/smajlik8.gif">',
  );
  
  // nahradime a vratime
  return strtr($zprava, $smileys);

}
pokerface
Profil *
Díky už to funguje

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: