Smilie Popup erstellen

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Totti_8
Mitglied
Beiträge: 9
Registriert: 08.11.2007 16:34

Smilie Popup erstellen

Beitrag von Totti_8 »

Hallo zusammen,

ich bin noch recht neu in php und möchte gerne für ein gästebuch ein popup mit smilies einfügen. Das Öffnen des popups funktioniert auch soweit ganz gut, aber jetzt weiß ich nicht, wie man von diesem popup einen eintrag in ein formular des großen fensters bekomme, wenn man auf einen "smilie" klickt. Wie lautet der befehl dazu bzw. was muss man machen?

MfG
Totti
Boecki91
Ehemaliges Teammitglied
Beiträge: 4744
Registriert: 18.06.2006 15:21

Beitrag von Boecki91 »

Du versuchst sozusagen eine Funktion von phpBB2 zu imitieren, am besten ist du schaust dir die Komplettlösung aus phpBB2 an.
Wird wahrscheinlich über JavaScript laufen.
Standart: Am besten mit beiden Beinen auf dem Boden
Standardmäßig antworte ich nicht auf PMs
Totti_8
Mitglied
Beiträge: 9
Registriert: 08.11.2007 16:34

Beitrag von Totti_8 »

Ich habe bereits nach einer solchen Funktion im PhpBB Script gesucht, aber nirgends eine für mich verständliche antwort gefunden.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Um den Popup JavaScript Code anzusehen solltest du einen Blick in die Datei posting_body.tpl deines Styles und die posting.php werfen.

In der posting_body.tpl findet sich etwas ähnliches wie das hier:

Code: Alles auswählen

<a href="posting.php?mode=smilies" onclick="window.open('posting.php?mode=smilies', '_phpbbsmilies', 'HEIGHT=300,resizable=yes,scrollbars=yes,WIDTH=700');return false;" target="_phpbbsmilies" class="nav">Weitere Smilies ansehen</a>
In der posting.php solltest du mal nach "smilies" suchen (in Kombination mit $mode) ;)
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Totti_8
Mitglied
Beiträge: 9
Registriert: 08.11.2007 16:34

Beitrag von Totti_8 »

Das habe ich bereits gefunden, allerdings sehe ich in der posting.php nirgendwo html oder javacode.

Ich habe allerdings im Quelltext eines solchen smilie fenster geguckt und diese funktion gefunden:

Code: Alles auswählen

<script language="javascript" type="text/javascript">
<!--
function emoticon(text) {
	text = ' ' + text + ' ';
	if (opener.document.forms['post'].message.createTextRange && opener.document.forms['post'].message.caretPos) {
		var caretPos = opener.document.forms['post'].message.caretPos;
		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
		opener.document.forms['post'].message.focus();
	} else {
	opener.document.forms['post'].message.value  += text;
	opener.document.forms['post'].message.focus();
	}
}
//-->
</script>
damit kann ich aber wenig bzw. nichts anfangen. ich habe versucht, diese funktion in mein gästebuch einzubauen, aber es hat nicht funktioniert, bzw. der linkt von den smilies wird nicht angezeigt und im quelltext wird die funktion auch nicht angezeigt :(

edit: mittlerweile wird die funktion angezeigt, aber es funktioniert trotzdem nicht. Hab aber alles von 'post' in den namen von meinem textfeld umbenannt :(

edit:

Code: Alles auswählen

function emoticon(text) {
	text = ' ' + text + ' ';
	if (opener.document.Guestbook.eintrag.message.createTextRange && opener.document.Guestbook.eintrag.message.caretPos) {
		var caretPos = opener.document.Guestbook.eintrag.message.caretPos;
		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
		opener.document.Guestbook.eintrag.message.focus();
	} else {
	opener.document.Guestbook.eintrag.message.value  += text;
	opener.document.Guestbook.eintrag.message.focus();
	}
}
Ich habe das jetzt so gemacht, aber es funktioniert einfach nicht und je mehr ich darauf gucke, desto weniger finde ich den Fehler...
Kann mir hier niemand helfen? Ich sehe immer nur, dass die Hits von dem Topic raufgehen, aber niemand postet, das kann doch nicht sein... :(


Problem Gelöst!
Ich Vollidiot habe ".message" nicht gelöscht, omg -.-
Antworten

Zurück zu „Coding & Technik“