Archivlink: javarea.de Forum > JavaScript > Smilies einfügen per klick einfügen
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > Smilies einfügen per klick einfügen

Pages: [1]

geschrieben von ekskalibur am 03.08.2005 - 12:49
Hallo zusammen

Bin neu im Forum und habe gleich eine Frage.
Auf Ihre Seite, habe ich ein Java Script gefunden und möchte für meine Smilies benützen, aber irgend wie funzt das alles nicht korrekt. Was habe ich falsch gemacht?

HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40: 
41: 
42: 
43: 
44: 
45: 
46: 
47: 
48: 
49: 
50: 
51: 
52: 
53: 
54: 
55: 
56: 
57: 
58: 
59: 
60: 
61: 
62: 
63: 
64: 
65: 
66: 
67: 
68: 
69: 
70: 
71: 
72: 
73: 
74: 
75: 
76: 
77: 
78: 
79: 
80: 
81: 
82: 
83: 
84: 
85: 
86: 
87: 
88: 
89: 
90: 
91: 
92: 
93: 
94: 
95: 
96: 
97: 
98: 
99: 
100: 
101: 
102: 
103: 
104: 
105: 
106: 
107: 
108: 
109: 
110: 
111: 
112: 
113: 
114: 
115: 
116: 
117: 
118: 
119: 
120: 
121: 
122: 
123: 
<html>
<head>
<title>Upis u knjigu gostiju</title>
</head>
<body>
<div align="center">
<table border=0 width=800 cellspacing=1 cellpadding=3><tr><td background="99.jpg">
<div align="center">
<form name="knjiga" action="index.php" method="post">
<font face="arial" color="#ffff66" size="5">
<p style="text-align:center; margin-top:30px">
<span style="letter-spacing:0.4em">Upis u knjigu gostiju</span></font><br>
<img src="linija.gif"></image>
<br>
<br>
<font face="Arial" color="#ffff66" size="3">
Va&#353e Ime : <br>
<input type="text" name="name" size="50"><br>
<br>
E-Mail : <br>
<input type="text" name="email" size="50"><br>
<br>
Homepage : <br>
<input type="text" name="www" size="50"><br>
<br>
Va&#353 tekst : <br>
<script language="JavaScript" type="text/javascript"> 
<!-- 
function cursor() { 
if (( navigator.userAgent.indexOf("Opera" ) != -1) || ( navigator.userAgent.indexOf("Netscape" ) != -1)) { 
text_before = document.formular.message.value; 
text_after = ""; 
} else { 
document.formular.message.focus(); 
var sel = document.selection.createRange(); 
sel.collapse(); 
var sel_before = sel.duplicate(); 
var sel_after = sel.duplicate(); 
sel.moveToElementText(document.formular.message); 
sel_before.setEndPoint("StartToStart",sel); 
sel_after.setEndPoint("EndToEnd",sel); 
text_before = sel_before.text; 
text_after = sel_after.text; 
} 
} 
function insert(AddCode) { 
cursor(); 

document.formular.message.value = text_before + AddCode + text_after; 
document.formular.message.focus(); 
} 

function init(thisCode) { 
with ( document.formular.message.value ) { 
switch(thisCode) { 

case "quote": 
insert("quote:"); 
break; 

case "code": 
insert("code:"); 
break; 

case "lach": 
insert(""); 
break; 
} 
document.formular.message.focus(); 
} 
} 
// --> 
</script> 

<form name="formular"> 
<textarea name="message" rows="5" cols="70" wrap="virtual"></textarea></form><br> 

<font class="stn"> <a href="javascript:init('quote')">Quote</a> | 
<font class="stn"> <a href="javascript:init('code')">Code</a> | 
<font class="stn"> <a href="javascript:init('lach')">Smilie</a> 

<FONT face=Arial size=2 align="center">
            Smilies:</FONT>
            <A 
            href="javascript:setsmile('=)')"><IMG 
            src="glave/z05.gif" 
            border=0></A> <A href="javascript:setsmile(':-)')"><IMG 
            src="glave/z01.gif" 
            border=0></A> <A href="javascript:setsmile('')"><IMG 
            src="glave/z02.gif" 
            border=0></A> <A href="javascript:setsmile(':-O')"><IMG 
            src="glave/z03.gif" 
            border=0></A> <A href="javascript:setsmile(':-D')"><IMG 
            src="glave/z04.gif" 
            border=0></A> <A href="javascript:setsmile(':-Q')"><IMG 
            src="glave/z06.gif" 
            border=0></A> <A href="javascript:setsmile(';)')"><IMG 
            src="glave/z08.gif" 
            border=0></A> <A href="javascript:setsmile(':-(')"><IMG 
            src="glave/z07.gif" 
            border=0></A> <A href="javascript:setsmile(';-(')"><IMG 
            src="glave/z11.gif" 
            border=0></A> <A href="javascript:setsmile(';(')"><IMG 
            src="glave/z12.gif" 
            border=0></A> <A href="javascript:setsmile('=(')"><IMG 
            src="glave/z13.gif" 
            border=0></A><br>

<br>
<input type="reset" value="Poni&#353ti"><input type="submit" align="center" name="submit" value="Po&#353alji">
</p>
<br>
<table border="0" align="left">
<caption style="caption-side:left">
<font face="arial" size="2" color="#ffff66">
Vrati se na <a href="/index.htm"><font face="arial" size="2" color="#ffff66">po&#269etnu stranicu</font></a></div></table>
<table border="0" align="right">
<caption style="caption-side:right">
<font face="arial" size="2" color="#ffff66">Vrati se u </font><a href="index.php"><font face="arial" size="2" color="#ffff66">knjigu gostiju</font></a></div></table>
</td></tr>
</form>
</body>
</html>


Vielen Dank für Antwort.
mfg
ekskalibur

geschrieben von weisnix am 04.08.2005 - 09:52
Hallo,

wenn du schon das Script einbaust, sollten die Smilies auch mit der dafür vorgesehenen Funktion eingefügt werden. Du aber benutzt dazu eine ganz andere. Also kann das nicht klappen.

Wenn du bei dem Script bleibst, muss du alle Smilies mit init('lach'), init('wein'), init('kuller') usw. einfügen.
Sieht dann so aus:
HTML-Quelltext
1: 
<A href="javascript:init('lach')"><IMG src="glave/z05.gif" border=0></A>


dann die nächsten, die aber im Script noch nicht angelegt sind.
Dazu musst du weitere unterschiede in den switch einbauen.
Sieht so aus:
HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
case "wein":
insert(":-(");
break;

case "kuller":
insert(":-%");
break;


nun kannst du diese füt die Smilies verwenden.
HTML-Quelltext
1: 
2: 
<A href="javascript:setsmile('wein')"><IMG src="glave/z01.gif" border=0></A>
usw.

der eingesetzte Textcode muss nur mir den Smilies überein stimmen

Das ganze geht auch etwas einfacher:
HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
<html>
<head>
<title>Smilies</title>
<script language="JavaScript">
<!--
function setsmile(smilietext) {
document.formular.message.value += smilietext+" ";
document.formular.message.focus();
}
//-->
</script>
</head>
<body>

<form name="formular" method="" action="">
  <p><textarea rows="2" name="message" cols="20"></textarea></p>
  <p><a href="#" onclick="setsmile(':-)')">smile 1</a></p>
  <p><a href="#" onclick="setsmile(':-(')">smile 2</a></p>
  <!-- hier weitere einfügen -->
  <!-- geht auch über das Smilie direckt -->
  <!-- <p><img border="0" src="smilies/1eye.gif" onclick="setsmile(':P)')" width="15" height="15"></p> -->
  <p><input type="submit" value="Abschicken" name="B1"></p>
  <p><input type="reset" value="Zurücksetzen" name="B2"></p>
</form>
</body>
</html>


Gruß

Da habe ich noch was entdeckt.

Der Formularname sollte im obersten Formular drinstehen. Zu dem ist es unnötig das Textarea in ein extra Form-Tag zu stecken.


geschrieben von ekskalibur am 12.08.2005 - 22:38
Hallo weisnix

Danke für dein Antwort.
Ich habe alles gemacht so wie du es geschrieben hast(hoffe ich) aber trotzdem kommt Meldung "Es sind Fehler auf der Seite aufgetreten" und die Smilies werden nicht eingefügt.
Kannst du mir zeigen wo ich die Fehler gemacht habe?
Hier ist die Code nochmals:

HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40: 
41: 
42: 
43: 
44: 
45: 
46: 
47: 
48: 
49: 
50: 
51: 
52: 
53: 
54: 
55: 
56: 
57: 
58: 
59: 
60: 
61: 
62: 
63: 
64: 
65: 
66: 
67: 
68: 
69: 
70: 
71: 
72: 
73: 
74: 
75: 
76: 
77: 
78: 
79: 
80: 
81: 
82: 
83: 
84: 
85: 
86: 
87: 
88: 
89: 
90: 
91: 
92: 
93: 
94: 
95: 
96: 
97: 
98: 
99: 
100: 
101: 
102: 
103: 
104: 
105: 
106: 
107: 
108: 
109: 
110: 
111: 
112: 
113: 
114: 
115: 
116: 
117: 
118: 
119: 
120: 
121: 
122: 
123: 
124: 
125: 
126: 
127: 
128: 
129: 
130: 
131: 
132: 
133: 
134: 
135: 
136: 
137: 
138: 
139: 
140: 
141: 
142: 
<html>
<head>
<title>Upis u knjigu gostiju</title>
</head>
<body>
<div align="center">
<table border=1 width=800 cellspacing=1 cellpadding=3><tr><td bgcolor="#3399cc">
<div align="center">
<form name="knjiga.txt" action="index.php" method="post">
<font face="arial" color="#ffff66" size="5">
<p style="text-align:center; margin-top:30px">
<span style="letter-spacing:0.4em">Upis u knjigu gostiju</span></font><br>
<br>
<br>
<font face="Arial" color="#ffff66" size="3">
Va&#353e Ime : <br>
<input type="text" name="name" size="50"><br>
<br>
E-Mail : <br>
<input type="text" name="email" size="50"><br>
<br>
Homepage : <br>
<input type="text" name="www" size="50"><br>
<br>
Va&#353 tekst : <br>
<script language="JavaScript" type="text/javascript"> 
<!-- 
function cursor() { 
if (( navigator.userAgent.indexOf("Opera" ) != -1) || ( navigator.userAgent.indexOf("Netscape" ) != -1)) { 
text_before = document.formular.message.value; 
text_after = ""; 
} else { 
document.obrada upis2.message.focus(); 
var sel = document.selection.createRange(); 
sel.collapse(); 
var sel_before = sel.duplicate(); 
var sel_after = sel.duplicate(); 
sel.moveToElementText(document.formular.message); 
sel_before.setEndPoint("StartToStart",sel); 
sel_after.setEndPoint("EndToEnd",sel); 
text_before = sel_before.text; 
text_after = sel_after.text; 
} 
} 
function insert(AddCode) { 
cursor(); 

document.obrada upis2.message.value = text_before + AddCode + text_after; 
document.obrada upis2.message.focus(); 
} 

function init(thisCode) { 
with ( document.obrada upis2.message.value ) { 
switch(thisCode) { 

case "smile": 
insert(":-):"); 
break; 

case "wink": 
insert(":"); 
break; 

case "biggrin": 
insert(":-D"); 
break; 

case "razz": 
insert(":-p"); 
break;

case "shock": 
insert(":-o"); 
break;

case "cool": 
insert("8-)"); 
break;

case "rolleyes": 
insert(":-/"); 
break;

case "sad": 
insert(":-("); 
break;

case "cry": 
insert(":'-("); 
break;

case "mad": 
insert(">:-("); 
break;

} 
document.obrada upis2.message.focus(); 
} 
} 
// --> 
</script> 

<textarea name="message" rows="10" cols="68" wrap="virtual"></textarea><br> 
<FONT face=Arial size=2 align="center">
            Smije&#353ne glave:</FONT>
            <A 
            href="javascript:init('smile')"><IMG 
            src="glave/smile.gif" 
            border=0></A> <A href="javascript:init('wink')"><IMG 
            src="glave/wink.gif" 
            border=0></A> <A href="javascript:init('biggrin')"><IMG 
            src="glave/biggrin.gif" 
            border=0></A> <A href="javascript:init('razz')"><IMG 
            src="glave/razz.gif" 
            border=0></A> <A href="javascript:init('shock')"><IMG 
            src="glave/shock.gif" 
            border=0></A> <A href="javascript:init('cool')"><IMG 
            src="glave/cool.gif" 
            border=0></A> <A href="javascript:init('rolleyes')"><IMG 
            src="glave/rolleyes.gif" 
            border=0></A> <A href="javascript:init('sad')"><IMG 
            src="glave/sad.gif" 
            border=0></A> <A href="javascript:init('cry')"><IMG 
            src="glave/cry.gif" 
            border=0></A> <A href="javascript:init('mad')"><IMG 
            src="glave/mad.gif" 
            border=0></A><br>
<br>
<input type="reset" value="Poni&#353ti"><input type="submit" align="center" name="submit" value="Po&#353alji">
</p>
<br>
<table border="0" align="left">
<caption style="caption-side:left">
<font face="arial" size="2" color="#ffff66">
Vrati se na <a href="/index.htm"><font face="arial" size="2" color="#ffff66">po&#269etnu stranicu</font></a></div></table>
<table border="0" align="right">
<caption style="caption-side:right">
<font face="arial" size="2" color="#ffff66">Vrati se u </font><a href="index.php"><font face="arial" size="2" color="#ffff66">knjigu gostiju</font></a></div></table>
</td></tr>
</form>
</body>
</html>


Wäre sehr froh wenn du mir konntest helfen.

Gruss
ekskalibur

geschrieben von René am 13.08.2005 - 08:59
HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40: 
41: 
42: 
43: 
44: 
45: 
46: 
47: 
48: 
49: 
50: 
51: 
52: 
53: 
54: 
55: 
56: 
57: 
58: 
59: 
60: 
61: 
62: 
63: 
64: 
65: 
66: 
67: 
68: 
69: 
70: 
71: 
72: 
73: 
74: 
75: 
76: 
77: 
78: 
79: 
80: 
81: 
82: 
83: 
84: 
85: 
86: 
87: 
88: 
89: 
90: 
91: 
92: 
93: 
94: 
95: 
96: 
97: 
98: 
99: 
100: 
101: 
102: 
103: 
104: 
105: 
106: 
107: 
108: 
109: 
110: 
111: 
112: 
113: 
114: 
115: 
116: 
117: 
118: 
119: 
120: 
121: 
122: 
123: 
124: 
125: 
126: 
127: 
128: 
129: 
130: 
131: 
132: 
133: 
134: 
135: 
136: 
137: 
138: 
139: 
140: 
141: 
142: 
143: 
144: 
145: 
146: 
147: 
148: 
149: 
150: 
151: 
152: 
153: 
154: 
155: 
156: 
157: 
158: 
159: 
160: 
161: 
162: 
163: 
164: 
165: 
166: 
167: 
168: 
169: 
170: 
171: 
172: 
173: 
174: 
175: 
176: 
177: 
178: 
179: 
180: 
181: 
182: 
183: 
184: 
185: 
186: 
187: 
188: 
189: 
190: 
191: 
192: 
<html>
<head>
<title>Upis u knjigu gostiju</title>

<script language="JavaScript" type="text/javascript">
<!--
var theSmilie = '';
var myAgent   = navigator.userAgent.toLowerCase();
var myVersion = parseInt(navigator.appVersion);
var is_ie     = ((myAgent.indexOf('msie') != -1) && (myAgent.indexOf('opera') == -1));
var is_win    = ((myAgent.indexOf('win') != -1) || (myAgent.indexOf('16bit') != -1));

function init(theCode)
{
	switch(theCode)
	{
		case 'smile':
		  theSmilie = ':-):';
		  break;

		case 'wink':
		  theSmilie = ';-):';
		  break;

		case 'biggrin':
		  theSmilie = ':-D';
		  break;

		case 'razz':
		  theSmilie = ':-p';
		  break;

		case 'shock':
		  theSmilie = ':-o';
		  break;

		case 'cool':
		  theSmilie = '8-)';
		  break;

		case 'rolleyes':
		  theSmilie = ':-/';
		  break;

		case 'sad':
		  theSmilie = ':-(';
		  break;

		case 'cry':
		  theSmilie = ':\'-(';
		  break;

		case 'mad':
		  theSmilie = '>:-(';
		  break;
	}

	addText(' ' + theSmilie, '', false, document.knjiga);
}

function addText(theTag, theClsTag, isSingle, theForm)
{
	var isClose  = false;
	var message  = theForm.message;
	var set      = false;
	var old      = false;
	var selected = '';

	if (message.textLength >= 0)
	{
		if ((theClsTag != '') && (message.selectionStart != message.selectionEnd))
		{
			selected = message.value.substring(message.selectionStart, message.selectionEnd);
			str      = theTag + selected + theClsTag;
			old      = true;
			isClose  = true;
		}
		else
			str = theTag;

		message.focus();

		start                  = message.selectionStart;
		end                    = message.textLength;
		endtext                = message.value.substring(message.selectionEnd, end);
		starttext              = message.value.substring(0, start);
		message.value          = starttext + str + endtext;
		message.selectionStart = start;
		message.selectionEnd   = start;
		message.selectionStart = message.selectionStart + str.length;

		if (old)
			return false;

		set = true;

		if (isSingle)
			isClose = false;
	}

	if ((myVersion >= 4) && is_ie && is_win)
	{
		if (message.isTextEdit)
		{
			message.focus();

			var sel = document.selection;
			var rng = sel.createRange();

			rng.colapse;

			if (((sel.type == 'Text') || (sel.type == 'None')) && (rng != null))
			{
				if ((theClsTag != '') && (rng.text.length > 0))
					theTag += rng.text + theClsTag;
				else if(isSingle)
					isClose = true;

				rng.text = theTag;
			}
		}
		else
		{
			if (isSingle)
				isClose = true;

			if (!set)
				message.value += theTag;
		}
	}
	else
	{
		if (isSingle)
			isClose = true;

		if (!set)
			message.value += theTag;
	}

	message.focus();

	return isClose;
}
//-->
</script>

<style type="text/css">
<!--
form
{
	display: inline;
}

textarea
{
	overflow: auto;
}

.smilie
{
	cursor: pointer;
}
//-->
</style>

</head>
<body>

<form name="knjiga" action="./index.php" method="post">
  <textarea name="message" rows="10" cols="68" wrap="virtual"></textarea>

  <br />

  <img class="smilie" src="./glave/smile.gif" border="0" width="16" height="16" onclick="init('smile');" title="smile" alt="smile" />
  <img class="smilie" src="./glave/wink.gif" border="0" width="16" height="16" onclick="init('wink');" title="wink" alt="wink" />
  <img class="smilie" src="./glave/biggrin.gif" border="0" width="16" height="16" onclick="init('biggrin');" title="biggrin" alt="biggrin" />
  <img class="smilie" src="./glave/razz.gif" border="0" width="16" height="16" onclick="init('razz');" title="razz" alt="razz" />
  <img class="smilie" src="./glave/shock.gif" border="0" width="16" height="16" onclick="init('shock');" title="shock" alt="shock" />
  <img class="smilie" src="./glave/cool.gif" border="0" width="16" height="16" onclick="init('cool');" title="cool" alt="cool" />
  <img class="smilie" src="./glave/rolleyes.gif" border="0" width="16" height="16" onclick="init('rolleyes');" title="rolleyes" alt="rolleyes" />
  <img class="smilie" src="./glave/sad.gif" border="0" width="16" height="16" onclick="init('sad');" title="sad" alt="sad" />
  <img class="smilie" src="./glave/cry.gif" border="0" width="16" height="16" onclick="init('cry');" title="cry" alt="cry" />
  <img class="smilie" src="./glave/mad.gif" border="0" width="16" height="16" onclick="init('mad');" title="mad" alt="mad" />

  <br /><br />

  <input name="submit" type="submit" value="Po&#353alji" />
  <input type="reset" value="Poni&#353ti" />
</form>

</body>
</html>

geschrieben von weisnix am 13.08.2005 - 21:43
Wie René schon angedeutet hat, du solltest den Formular Name richtig einsetzen.

Der darf auch kein Leerzeichen haben.

Das Script in den head-Bereich setzen. Ist dem IE zwar schnuppe, dennoch gehört halt so.

Im Anhang deine Seite zum vergleichen.

geschrieben von René am 13.08.2005 - 22:05
Sein alter Code funktioniert hier nur mit dem IE darum auch oben von mir neuer Code.

geschrieben von weisnix am 13.08.2005 - 22:20
Dann soll er mal schön umbauen.
Beispiele gibt es ja genug. Sollte auf alle Fälle auch mit dem FF funktionieren, und mit deinem Script ist es ja einfacher, wird der FormName nur einmal eingesetzt.

geschrieben von ekskalibur am 15.08.2005 - 22:59
Ich bedanke mich bei euch

aber mein Problem ist teilweise gelöst.
Wenn es um Script geht bin ich ein Anfänger und habe deshalb Schwierigkeiten das zu realisieren.
Ich habe mehrmals verschiedene Möglichkeiten ausprobiert aber die Lösung ist nicht da.

Diesen Code von René möchte ich mit meinen Code erweitern.

Mein Code ist Grün :

HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40: 
41: 
42: 
43: 
44: 
45: 
46: 
47: 
48: 
49: 
50: 
51: 
52: 
53: 
54: 
55: 
56: 
57: 
58: 
59: 
60: 
61: 
62: 
63: 
64: 
65: 
66: 
67: 
68: 
69: 
70: 
71: 
72: 
73: 
74: 
75: 
76: 
77: 
78: 
79: 
80: 
81: 
82: 
83: 
84: 
85: 
86: 
87: 
88: 
89: 
90: 
91: 
92: 
93: 
94: 
95: 
96: 
97: 
98: 
99: 
100: 
101: 
102: 
103: 
104: 
105: 
106: 
107: 
108: 
109: 
110: 
111: 
112: 
113: 
114: 
115: 
116: 
117: 
118: 
119: 
120: 
121: 
122: 
123: 
124: 
125: 
126: 
127: 
128: 
129: 
130: 
131: 
132: 
133: 
134: 
135: 
136: 
137: 
138: 
139: 
140: 
141: 
142: 
143: 
144: 
145: 
146: 
147: 
148: 
149: 
150: 
151: 
152: 
153: 
154: 
155: 
156: 
157: 
158: 
159: 
160: 
161: 
162: 
163: 
164: 
165: 
166: 
167: 
168: 
169: 
170: 
171: 
172: 
173: 
174: 
175: 
176: 
177: 
178: 
179: 
180: 
181: 
182: 
183: 
184: 
185: 
186: 
187: 
188: 
189: 
190: 
191: 
192: 
193: 
194: 
195: 
196: 
197: 
198: 
199: 
200: 
201: 
202: 
203: 
204: 
205: 
206: 
207: 
208: 
209: 
210: 
211: 
212: 
<html>
<head>
<title>Upis u knjigu gostiju</title>

<script language="JavaScript" type="text/javascript">
<!--
var theSmilie = '';
var myAgent   = navigator.userAgent.toLowerCase();
var myVersion = parseInt(navigator.appVersion);
var is_ie     = ((myAgent.indexOf('msie') != -1) && (myAgent.indexOf('opera') == -1));
var is_win    = ((myAgent.indexOf('win') != -1) || (myAgent.indexOf('16bit') != -1));

function init(theCode)
{
	switch(theCode)
	{
		case 'smile':
		  theSmilie = ':-):';
		  break;

		case 'wink':
		  theSmilie = ':';
		  break;

		case 'biggrin':
		  theSmilie = ':-D';
		  break;

		case 'razz':
		  theSmilie = ':-p';
		  break;

		case 'shock':
		  theSmilie = ':-o';
		  break;

		case 'cool':
		  theSmilie = '8-)';
		  break;

		case 'rolleyes':
		  theSmilie = ':-/';
		  break;

		case 'sad':
		  theSmilie = ':-(';
		  break;

		case 'cry':
		  theSmilie = ':\'-(';
		  break;

		case 'mad':
		  theSmilie = '>:-(';
		  break;
	}

	addText(' ' + theSmilie, '', false, document.knjiga);
}

function addText(theTag, theClsTag, isSingle, theForm)
{
	var isClose  = false;
	var message  = theForm.message;
	var set      = false;
	var old      = false;
	var selected = '';

	if (message.textLength >= 0)
	{
		if ((theClsTag != '') && (message.selectionStart != message.selectionEnd))
		{
			selected = message.value.substring(message.selectionStart, message.selectionEnd);
			str      = theTag + selected + theClsTag;
			old      = true;
			isClose  = true;
		}
		else
			str = theTag;

		message.focus();

		start                  = message.selectionStart;
		end                    = message.textLength;
		endtext                = message.value.substring(message.selectionEnd, end);
		starttext              = message.value.substring(0, start);
		message.value          = starttext + str + endtext;
		message.selectionStart = start;
		message.selectionEnd   = start;
		message.selectionStart = message.selectionStart + str.length;

		if (old)
			return false;

		set = true;

		if (isSingle)
			isClose = false;
	}

	if ((myVersion >= 4) && is_ie && is_win)
	{
		if (message.isTextEdit)
		{
			message.focus();

			var sel = document.selection;
			var rng = sel.createRange();

			rng.colapse;

			if (((sel.type == 'Text') || (sel.type == 'None')) && (rng != null))
			{
				if ((theClsTag != '') && (rng.text.length > 0))
					theTag += rng.text + theClsTag;
				else if(isSingle)
					isClose = true;

				rng.text = theTag;
			}
		}
		else
		{
			if (isSingle)
				isClose = true;

			if (!set)
				message.value += theTag;
		}
	}
	else
	{
		if (isSingle)
			isClose = true;

		if (!set)
			message.value += theTag;
	}

	message.focus();

	return isClose;
}
//-->
</script>

<style type="text/css">
<!--
form
{
	display: inline;
}

textarea
{
	overflow: auto;
}

.smilie
{
	cursor: pointer;
}

.formular
{
	background-color: #39c;
	font-family: Arial;
	text-align: center;
	padding: 30px 0px;
	font-size: 14px;
	color: #ff6;
}
//-->
</style>
</head>
<body>

<div align="center"><form name="knjiga" action="./index.php" method="post">
  <table border="1" cellspacing="1" cellpadding="3" width="800">
    <tr>
      <td class="formular">Va&#353e Ime :<br />
      <input name="name" type="text" size="50" /><br /><br />
      E-Mail :<br />
      <input type="text" name="email" size="50" /><br /><br />
      Homepage :<br />
      <input type="text" name="www" size="50" /><br /><br />
      Va&#353 tekst :<br />
      <textarea name="message" rows="10" cols="68" wrap="virtual"></textarea>

      <br />

      <img class="smilie" src="./glave/smile.gif" border="0" width="16" height="16" onclick="init('smile');" title="smile" alt="smile" />
      <img class="smilie" src="./glave/wink.gif" border="0" width="16" height="16" onclick="init('wink');" title="wink" alt="wink" />
      <img class="smilie" src="./glave/biggrin.gif" border="0" width="16" height="16" onclick="init('biggrin');" title="biggrin" alt="biggrin" />
      <img class="smilie" src="./glave/razz.gif" border="0" width="16" height="16" onclick="init('razz');" title="razz" alt="razz" />
      <img class="smilie" src="./glave/shock.gif" border="0" width="16" height="16" onclick="init('shock');" title="shock" alt="shock" />
      <img class="smilie" src="./glave/cool.gif" border="0" width="16" height="16" onclick="init('cool');" title="cool" alt="cool" />
      <img class="smilie" src="./glave/rolleyes.gif" border="0" width="16" height="16" onclick="init('rolleyes');" title="rolleyes" alt="rolleyes" />
      <img class="smilie" src="./glave/sad.gif" border="0" width="16" height="16" onclick="init('sad');" title="sad" alt="sad" />
      <img class="smilie" src="./glave/cry.gif" border="0" width="16" height="16" onclick="init('cry');" title="cry" alt="cry" />
      <img class="smilie" src="./glave/mad.gif" border="0" width="16" height="16" onclick="init('mad');" title="mad" alt="mad" />

      <br /><br />

      <input name="submit" type="submit" value="Po&#353alji" />
      <input type="reset" value="Poni&#353ti" /></td>
    </tr>
  </table>
</form></div>

</body>
</html>



So jetzt wenn ich die Code eingebe egal auf wo kommt die Meldung "Fehler auf der Seite", die Smilies ich kann nicht eingeben und es wird nicht in das buch (knjiga.txt) geschrieben.
Was mache ich falsch das die Code nicht funtzt?

Meine Ordnerbaum auf der Homepage könnt ihr in der Datei http://www.josava.ch/gosti/ordnerbaum.jpg ansehen.

Erklärung:

index.php - schreibt die Einträge in dass knjiga.txt-Buch rein
upis.html - ist die Formular-Datei mit welche ich ganze Zeit Probleme wegen Smilies habe


gruss
ekskalibur

geschrieben von René am 16.08.2005 - 07:30
Habe deinen Text angepasst.


Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.