Это для какой версии
я прописывала так:для административныхif (ereg(".gif$", "$file")){$file2 = $file;$file2 = str_replace(".gif", "", $file2);$trfile = trans($file2);$str = str_replace(":$file2:", "<img src=\"../sm/adm/$file2.gif\" alt=\"\" />", $str);$str = str_replace(":$trfile:", "<img src=\"../sm/adm/$file2.gif\" alt=\"\" />", $str);$file2 = $file;$file2 = str_replace(".gif", "", $file2);$trfile = trans($file2);$str = str_replace(".$file2.", "<img src=\"../sm/adm/$file2.gif\" alt=\"\" />", $str);$str = str_replace(".$trfile.", "<img src=\"../sm/adm/$file2.gif\" alt=\"\" />", $str);}для каталога if (ereg(".gif$", "$k")){$file2 = $k;$file2 = str_replace(".gif", "", $file2);$trfile = trans($file2);$str = str_replace(":$file2:", "<img src=\"../sm/cat/$a[$a1]/$file2.gif\" alt=\"\" />", $str);$str = str_replace(":$trfile:", "<img src=\"../sm/cat/$a[$a1]/$file2.gif\" alt=\"\" />", $str);$file2 = $k;$file2 = str_replace(".gif", "", $file2);$trfile = trans($file2);$str = str_replace(".$file2.", "<img src=\"../sm/cat/$a[$a1]/$file2.gif\" alt=\"\" />", $str);$str = str_replace(".$trfile.", "<img src=\"../sm/cat/$a[$a1]/$file2.gif\" alt=\"\" />", $str);}
Тоже хочу спросить, тема думал новая
Как сделать так :смайл: и так .смайл. ?
Кто может прописать?и мне
Я знаю только как сделать чтобы через точку писать, а варианты написания не знаю
Вот, щас дописал, ловите обработку смайлов с вариантами.
function smileys($str, $adm = 0) {
////////////////////////////////////////////////////////////
// Обработка смайлов //
////////////////////////////////////////////////////////////
// $adm=1 покажет и обычные и Админские смайлы //
// $adm=2 пересоздаст кэш смайлов //
////////////////////////////////////////////////////Mod By Shady/Shady92 (free2wap.ru)////////
global $rootpath;
// Записываем КЭШ смайлов
if ($adm == 2) {
// Обрабатываем простые смайлы
$array1 = array();
$array10 = array();
$path = $rootpath . 'smileys/simply/';
$dir = opendir($path);
while ($file = readdir($dir)) {
$name = explode(".", $file);
if ($name[1] == 'gif' || $name[1] == 'jpg' || $name[1] == 'png') {
$array1[':' . $name[0]] = '<img src="' . $path . $file . '" alt="" />';
$array10[':-' . $name[0]] = '<img src="' . $path . $file . '" alt="" />';
++$count;
}
}
closedir($dir);
// Обрабатываем Админские смайлы
$array2 = array();
$array3 = array();
$array8 = array();
$array9 = array();
$path = $rootpath . 'smileys/admin/';
$dir = opendir($path);
while ($file = readdir($dir)) {
$name = explode(".", $file);
if ($name[1] == 'gif' || $name[1] == 'jpg' || $name[1] == 'png') {
$array2[':' . trans($name[0]) . ':'] = '<img src="' . $path . $file . '" alt="" />';
$array3[':' . $name[0] . ':'] = '<img src="' . $path . $file . '" alt="" />';
//$array3['.' . $name[0] . '.'] = '<img src="' . $path . $file . '" alt="" />';
//$array2[':' . trans($name[0]) . ':'] = '<img src="' . $path . $file . '" alt="" />';
$array8['.' . $name[0] . '.'] = '<img src="' . $path . $file . '" alt="" />';
$array9['.' . $name[0] . '.'] = '<img src="' . $path . $file . '" alt="" />';
++$count;
}
}
// Обрабатываем смайлы в каталогах с :
$array4 = array();
$array5 = array();
$array6 = array();
$array7 = array();
$cat = glob($rootpath . 'smileys/user/*', GLOB_ONLYDIR);
$total = count($cat);
for ($i = 0; $i < $total; $i++) {
$dir = opendir($cat[$i]);
while ($file = readdir($dir)) {
$name = explode(".", $file);
if ($name[1] == 'gif' || $name[1] == 'jpg' || $name[1] == 'png') {
$array4[':' . trans($name[0]) . ':'] = '<img src="' . $cat[$i] . '/' . $file . '" alt="" />';
$array5[':' . $name[0] . ':'] = '<img src="' . $cat[$i] . '/' . $file . '" alt="" />';
$array6['.' . trans($name[0]) . '.'] = '<img src="' . $cat[$i] . '/' . $file . '" alt="" />';
$array7['.' . $name[0] . '.'] = '<img src="' . $cat[$i] . '/' . $file . '" alt="" />';
++$count;
}
}
closedir($dir);
}
$smileys = serialize(array_merge($array1, $array10, $array4, $array5, $array6, $array7));
$smileys_adm = serialize(array_merge($array2, $array3, $array8, $array9));
// Записываем в файл Кэша
if ($fp = fopen($rootpath . 'cache/smileys_cache.dat', 'w')) {
fputs($fp, $smileys . "\r\n" . $smileys_adm);
fclose($fp);
return $count;
}
else {
return false;
}
}
else {
// Выдаем кэшированные смайлы
if (file_exists($rootpath . 'cache/smileys_cache.dat')) {
$file = file($rootpath . 'cache/smileys_cache.dat');
$smileys = unserialize($file[0]);
if ($adm)
$smileys = array_merge($smileys, unserialize($file[1]));
return strtr($str, $smileys);
}
else {
return $str;
}
}
}
Теперь можно писать Смайлы так- :смайл: или так .смайл. или даже так! :-( :-D :-) - будут отображать обычные Смайлы в папке simply/ для администрации Смайлы пишутся только через знак двоеточие :адм:
Установка: заменить функцию смайлов, что в вашем файле incfiles/func.php на мою, соблюдая синтаксис, и обновить кэш смайлов в админке.
P.S: спасибы и плюски принимаются
зачёт однозначно , давно хотел сделать, но руки не доходили
Shady, Спасибо братан )))
Пожалуйста. Просто мне на телефоне надоело щелкать 7 раз джойстиком вверх чтобы поставить : а точку ставлю одним щелчком. Ну и для тех кто в инете первый раз сделал обработку таких смайлов :-) :-( :-D Новички же не умеют Смайлы тыкать