Witam.
Ostatnio znalaz?em tzw. Smiley Manager czyli Zarz?dzanie Emotikonami. Pomy?lalem, ?eby zrobic co? takieog, gdy zaznacze pole wyboru to mi si? emotikon wyswietli, a gdy nie zaznacze to mi si? nie wyswietli. To ju? zrobi?em. W bazie skrypt zapisuje 0 - gdy ma nie wy?wietla? i 1 gdy ma wy?wietla?. I taraz nie potrafie zrobi?, ?eby te emotikonki si? nie wy?wietla?y. W pliku maincore.php kod wygl?da tak:
// Cache smileys mysql
function cache_smileys() {
global $smiley_cache;
$result = dbquery("SELECT * FROM ".DB_PREFIX."smileys");
if (dbrows($result)) {
$smiley_cache = array();
while ($data = dbarray($result)) {
$smiley_cache[] = array(
"smiley_code" => $data['smiley_code'],
"smiley_image" => $data['smiley_image'],
"smiley_text" => $data['smiley_text']
);
}
} else {
$smiley_cache = "";
}
}
// Parse smiley bbcode
function parsesmileys($message) {
global $smiley_cache;
if (!isset($smiley_cache)) cache_smileys();
if (is_array($smiley_cache)) {
foreach ($smiley_cache as $smiley) {
$smiley_code = preg_quote($smiley['smiley_code']);
$smiley_image = "<img src='".IMAGES."smiley/".$smiley['smiley_image']."' title='".$smiley['smiley_text']."' alt='".$smiley['smiley_text']."'>";
$message = preg_replace("#{$smiley_code}#si", $smiley_image, $message);
}
}
return $message;
}
// Show smiley icons in comments, forum and other post pages
function displaysmileys($textarea, $close="", $form="inputform") {
global $smiley_cache;
$smileys = ""; $i = 0;
if (!isset($smiley_cache)) cache_smileys();
if (is_array($smiley_cache)) {
$max_width = 340; $width = 0;
foreach ($smiley_cache as $smiley) {
if ($form == "inputform") {
$img = getimagesize(IMAGES."smiley/".$smiley['smiley_image']);
if ($width + $img[0] >= $max_width) {
$smileys .= "<br>\n";
$width = $img[0];
} else {
$width = $width + $img[0];
}
}
$smileys .= "<img src='".IMAGES."smiley/".$smiley['smiley_image']."' title='".$smiley['smiley_text']."' alt='".$smiley['smiley_text']."' onClick=\"insertText('".$textarea."', '".$smiley['smiley_code']."', '".$form."');".(!empty($close) ? " overlayclose('$close');" : "")."\">\n";
}
}
return $smileys;
}
Pomy?la?em, ?e to powinno dziala? (0 i 1 zapisuje sobie w komórce smiley_wyswietl)
if ($data['smiley_wyswietl'] == "1")
I chyba ten kod dzia?a, tylko nie bardzo wiem gdzie wklei? to w ten kod z maincore.php.
Z góry dzi?ki za pomoc
Edytowane przez bartek124 dnia 08.10.2007 17:32:13
|