---
title: "Forumbyggnad"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/176096-forumbyggnad"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "SoulGod"
published: "2009-01-01T11:28:05.000Z"
updated: "2009-01-01T18:42:18.000Z"
replies: 4
views: 427
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/176096-forumbyggnad"
---

# Forumbyggnad

## #1 — SoulGod, 2009-01-01T11:28Z

Jag har ett forum på min sida, som är extremt tråkigt och funktionsfattigt.
Jag vill bygga in en ny fuktion..
Smilies på sidan ( som wf har ) som man bara kan klicka, så kommer dom in.
Likaså även "**\-taggar" och liknande skall finnas där.

Jag vet tyvärr inte hur man skall börja med någon av dessa.
Hur gör jag för att mina besökare ska kunna klicka på en smiley, så kommer dom in i textrutan?**

Permalänk: https://www.webforum.nu/p/176096

## #2 — Pedda, 2009-01-01T13:52Z

Detta använder jag för att infoga smilies.
 
Textarean i exemplet heter "meddelande" och formuläret heter "postForm".

Javascript:

```
var cPos,
    fObj,
    ieC = Boolean(document.selection && document.selection.createRange);

function smilie(str) {
    if (ieC) {
	if (typeof cPos != "undefined")
	    cPos.text = str;
	else
	    fObj.value = str;
    }

    else if (typeof window.HTMLTextAreaElement != "undefined")
	fObj.value = fObj.value.substring(0, fObj.selectionStart) + str + fObj.value.substring(fObj.selectionEnd);

    else fObj.value += str;
}

function sC() {
    cPos = document.selection.createRange().duplicate();
}

window.onload = function() {
    fObj = document.forms["postForm"].elements["meddelande"];

    if (ieC) {
	fObj.onclick  = function() { sC(); }
	fObj.onkeyup  = function() { sC(); }
	fObj.onselect = function() { sC(); }
    }
}
```

och länkarna:

```
<a href="#" onclick="smilie(' :e'); return false;"><img src="smilies/biggrin.gif" alt="stort flin" width="18" height="18" border="0" /></a> 
<a href="#" onclick="smilie(' :q'); return false;"><img src="smilies/confused.gif" alt="undrande" width="18" height="18" border="0" /></a> 
<a href="#" onclick="smilie(' :h'); return false;"><img src="smilies/cool.gif" alt="lugn" width="18" height="18" border="0" /></a> 
<a href="#" onclick="smilie(' :x'); return false;"><img src="smilies/cry.gif" alt="gr&aring;ter" width="18" height="18" border="0" /></a> 
<a href="#" onclick="smilie(' :P'); return false;"><img src="smilies/drool.gif" alt="dreglar" width="18" height="18" border="0" /></a> 
<a href="#" onclick="smilie(' :p'); return false;"><img src="smilies/happy.gif" alt="glad" width="18" height="18" border="0" /></a>  
<a href="#" onclick="smilie(' x('); return false;"><img src="smilies/mad.gif" alt="arg" width="18" height="18" border="0" /></a> 
<a href="#" onclick="smilie(' :('); return false;"><img src="smilies/sad.gif" alt="ledsen" width="18" height="18" border="0" /></a> 
<a href="#" onclick="smilie(' :t'); return false;"><img src="smilies/sleepy.gif" alt="s&ouml;mnig" width="18" height="18" border="0" /></a> 
<a href="#" onclick="smilie(' :)'); return false;"><img src="smilies/smile.gif" alt="leende" width="18" height="18" border="0" /></a> 
<a href="#" onclick="smilie(' :o'); return false;"><img src="smilies/suprised.gif" alt="f&ouml;rv&aring;nad" width="18" height="18" border="0" /></a> 
<a href="#" onclick="smilie(' :bla'); return false;"><img src="smilies/tongue.gif" alt="retsam" width="18" height="18" border="0" /></a>
```

/red
Glömde ju koden för att ändra tecknen till bilder 
Variabeln $text innehåller texten som ska presenteras på sidan.

```php
$smile_search = array(
":e", 
":q", 
":h", 
":x", 
":P",
":p", 
"x(", 
":(", 
":t", 
":)", 
":o", 
":bla"
);
$smile_replace = array(
"<img src='smilies/biggrin.gif' width='18' height='18' alt='stort flin' />",
"<img src='smilies/confused.gif' width='18' height='18' alt='undrande' />",
"<img src='smilies/cool.gif' width='18' height='18' alt='lugn' />",
"<img src='smilies/cry.gif' width='18' height='18' alt='gråter' />",
"<img src='smilies/drool.gif' width='18' height='18' alt='dreglar' />", 
"<img src='smilies/happy.gif' width='18' height='18' alt='glad' />", 
"<img src='smilies/mad.gif' width='18' height='18' alt='arg' />", 
"<img src='smilies/sad.gif' width='18' height='18' alt='ledsen' />", 
"<img src='smilies/sleepy.gif' width='18' height='18' alt='sömnig' />", 
"<img src='smilies/smile.gif' width='18' height='18' alt='leende' />", 
"<img src='smilies/suprised.gif' width='18' height='18' alt='förvånad' />", 
"<img src='smilies/tongue.gif' width='18' height='18' alt='retsam' />"
);
					
$text = str_replace($smile_search, $smile_replace, $text);
```

Permalänk: https://www.webforum.nu/p/2161065

## #3 — Pedda, 2009-01-01T13:55Z

Du frågade ju också om s.k bbcode.
Ett exempel hittar du här <http://www.webforum.nu/showthread.php?t=105075&highlight=bbcode>

Permalänk: https://www.webforum.nu/p/2161067

## #4 — SoulGod, 2009-01-01T17:14Z

För att krångla till saker ännu mer ..
Pedda & jag pratade om att jag har en större lista av smileys jag vill ha,
som jag nu läst in i databasen.
Databasen heter smilies, och består av
name & pic

name är själva kommandot som används för att "göra" smileyn, och pic är ju då bilden =)

Hur gör jag då?
Vet att jag lär läsa in det i en array, men vet inte hur.

Permalänk: https://www.webforum.nu/p/2161080

## #5 — Pedda, 2009-01-01T18:42Z

Det skulle kunna se ut något sånt här

```php
<?php 
$forum = mysql_query("SELECT * FROM forum") or die ("Kunde inte ansluta till forum.");
$smilies = mysql_query("SELECT * FROM smilie") or die ("Kunde inte ansluta till smilie.");
	
while ($cur_forum = mysql_fetch_array($forum)) {
	$text = $cur_forum['text'];
	while ($cur_smilies = mysql_fetch_array($smilies)) {
		$text = str_replace($cur_smilies['name'], "<img src='smilies/".$cur_smilies['pic']."' />", $text);
	}
	echo $text;
}
?>
```

Permalänk: https://www.webforum.nu/p/2161086

---

Tråden på webben: https://www.webforum.nu/amne/php/176096-forumbyggnad
