 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
14.01.2004, 13:41
|
#1
|
|
TP-Senior
Registriert seit: Oct 2002
Ort: Steinach
|
Formular mit BBCode
Wie funktioniert das mit den BBCODE Buttons in Formularen wie z.B. hier im Forum.
Es gibt zwar zahlreich Tutorials für BBCODE aber nirgens wird erklärt wie mann das in ein Formular einbaut.
Wie funktioniert es, dass er wenn man auf ein Button klickt das [b] auch im Text erscheint.
|
|
|
14.01.2004, 14:45
|
#2
|
|
TP-Greis
Registriert seit: Jun 2001
Ort: Bonn-Altstadt
|
Du fragst den mit den UBB-Code-Tags zu umschliessenden Text einfach per Javascript ab und fügst das Konstrukt dann in Dein Eingabefeld (oder was auch immer) ein:
Code:
<script language="Javascript">
<!--
function ubbBeispiel()
{
with(document.forms[0].beispiel)
{
var string = prompt('Bitte Text eingeben:');
value += ' ' + '[ b ]' + string + '[ /b ]';
focus();
}
}
-->
</script>
<form>
<textarea name="beispiel"></textarea>
<input type="button" onClick="ubbBeispiel()">
</form>
Weitere Möglichkeiten zur Formatierung, eine Überprüfung der Eingabe oder ähnliche Features lassen sich dann leicht in die gezeigte Funktion einbauen.
P.S. Die Leerzeichen bei [ b ] und [ /b ] haben keinen tieferen Sinn -- ohne würde sie das Forum aber verschlucken.
__________________
Give up yourself into the moment — The time is now.
|
|
|
15.01.2004, 12:48
|
#3
|
|
TP-Senior
Registriert seit: Oct 2002
Ort: Steinach
|
Gibt es eigendlich auser den Namen einen Unterschied zwischen VB Code, BBCode UB Code ec. .
Geändert von maffy (15.01.2004 um 12:51 Uhr).
|
|
|
15.01.2004, 13:15
|
#4
|
|
TP-Greis
Registriert seit: Jun 2001
Ort: Bonn-Altstadt
|
Nein.
__________________
Give up yourself into the moment — The time is now.
|
|
|
15.01.2004, 18:55
|
#5
|
|
TP-Senior
Registriert seit: Oct 2002
Ort: Steinach
|
Na gut, dann werde ich mir mal ein Formular basteln.
Eine Frage noch, kann ich das ganze auch mit den ganzen Tabellen Tags <table> <tr> <th> ec. machen um z.B. Newsbeiträge in Spaltensatz zu Formatieren.
Oder ist das nicht sinnvoll
MFG Maffy
|
|
|
15.01.2004, 20:24
|
#6
|
|
TP-Senior
Registriert seit: Oct 2002
Ort: Steinach
|
Habe das jetzt mal in mein Formular eingebaut es kommt aber eine Fehler Meldung wenn auf einen Button klicke.
Code:
<?php
include("inc/mysqldb.php");
include("inc/session.php");
if ($newsid)
{
$db->query("select newsid,autor,header,datum,email,news
FROM mr73_news where newsid=$newsid");
list($newsid,$autor,$header,$datum,$email,$news) = $db->data();
}
?><html>
<head>
<title>Administratorbereich News Bearbeiten</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="Javascript">
<!--
//########### Text FETT ########################
function fett()
{
with(document.forms[0].news)
{
var string = prompt("Text der FETT formatiert werden soll:","");
value += " " + "<b>" + string + "</b>";
focus();
}
}
//########### Text Unterstrichen ########################
function unterstrichen()
{
with(document.forms[0].news)
{
var string = prompt("Text der Unterstrichen formatiert werden soll:","");
value += " " + "<u>" + string + "</u>";
focus();
}
}
//########### Text Kursiv ########################
function italic()
{
with(document.forms[0].news)
{
var string = prompt("Text der KURSIV formatiert werden soll:","");
value += " " + "<i>" + string + "</i>";
focus();
}
}
//########### URL einfügen ########################
function url()
{
with(document.forms[0].news)
{
linktext = prompt("Titel des Links:","");
linkurl = prompt("URL des Links:","http://");
value += " " + "<a href=\""+linkurl+"\">"+linktext+"</a> ";
focus();
}
}
-->
</script>
<link rel="stylesheet" href="studio73.css" type="text/css">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<table width="100%" border="0" cellspacing="1" cellpadding="5" class="t2">
<tr>
<td>
<table width="100%" border="0" cellspacing="2" cellpadding="2" align="center" class="t5" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#CCCCCC">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="forumline">
<tr>
<td>
<table width="95%" border="0" cellspacing="1" cellpadding="2" class="genh1" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#FFFFFF" background="../images/bkgn1.gif">
<div align="center"> ++ News Erstellen und Bearbeiten
++</div>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table width="100%" border="0" cellspacing="2" cellpadding="5" align="center">
<tr>
<td width="100%" bgcolor="#FFFFFF" valign="top">
<table width="95%" border="0" cellspacing="2" cellpadding="5" align="center" bgcolor="#FFFFFF" class="t4">
<tr>
<td>
<form action="news_change.php" method="post">
<table border cellpadding="5" align="center" class="t4" cellspacing="1">
<tr>
<th colspan="2">News erstellen / bearbeiten </th>
</tr>
<tr>
<td align="right">Header</td>
<td>
<input type="text" name="header" value="<?php echo($header);?>">
</td>
</tr>
<tr>
<td align="right">Datum</td>
<td>
<input type="text" name="datum" value="<?php echo($datum);?>">
Format: YYYY-MM-DD </td>
</tr>
<tr>
<td align="right">Autor</td>
<td>
<input type="text" name="autor" value="<?php echo($autor);?>">
</td>
</tr>
<tr>
<td align="right">EMail</td>
<td>
<input type="text" name="email" value="<?php echo($email);?>">
</td>
</tr>
<tr>
<td align="right">HTML Formate:</td>
<td class="gen">
<input type="button" onClick="fett(0)" value="< B >" name="B">
<input type="button" onClick="unterstrichen(0)" value="< U >" name="U">
<input type="button" onClick="italic(0)" value="< I >" name="I">
<input type="button" onClick="italic(0)" value="< URL >" name="URL">
</td>
</tr>
<tr>
<td align="right">News</td>
<td>
<textarea name="news" cols="50" rows="10"><?php echo($news);?></textarea>
</td>
</tr>
<tr>
<td colspan="2">
<div align="center">
<input type="submit" value="News erstellen / bearbeiten" name="submit">
</div>
</td>
</tr>
</table>
<input type="hidden" name="newsid" value="<?php echo($newsid);?>">
</form>
</td>
</tr>
<tr>
<td bgcolor="#FFFFFF">
<div align="center"><a href="news_index.php" class="menü">«
zurück zur Newsübersicht »</a></div>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="20">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="t2">
<tr>
<td>
<div align="center"><b class="copyright">www.mr-73.de © 2000
- 2003 By Matthias Reichert</b></div>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
|
|
|
16.01.2004, 09:29
|
#7
|
|
TP-Greis
Registriert seit: Jun 2001
Ort: Bonn-Altstadt
|
Zitat:
Original geschrieben von maffy
es kommt aber eine Fehler Meldung wenn auf einen Button klicke.
|
Und was sagt die so?
__________________
Give up yourself into the moment — The time is now.
|
|
|
16.01.2004, 14:31
|
#8
|
|
TP-Senior
Registriert seit: Oct 2002
Ort: Steinach
|
Wenn ich einen Button klicke um z.B. <B> einzufügen, tut er das B zum einen nicht in der Textbox ausgeben und unten erscheint ein Ausrufezeichen und der Text Fehler auf der Seite.
Mehr passiert nicht.
|
|
|
16.01.2004, 14:35
|
#9
|
|
TP-Senior
Registriert seit: Oct 2002
Ort: Steinach
|
was ich noch vergessen habe, wenn ich das ganze in einem ganz normalen Formular teste Funktioniert das ohne Probleme.
|
|
|
16.01.2004, 15:29
|
#10
|
|
TP-Greis
Registriert seit: Jun 2001
Ort: Bonn-Altstadt
|
Wo, wenn nicht innerhalb eines Formulars, versuchst Du denn, das Ganze einzubauen? 
__________________
Give up yourself into the moment — The time is now.
|
|
|
16.01.2004, 16:01
|
#11
|
|
TP-Senior
Registriert seit: Oct 2002
Ort: Steinach
|
Schau dir mal den obigen Code im ersten Beitrag hier an.
So schaut mein Formular aus.
|
|
|
31.12.2004, 11:25
|
#12
|
|
TP-Junior
Registriert seit: Dec 2004
Ort: köln
|
Genau das Problem hab ich auch.
In ner Test-HTML funktioniert das alles schön.
Aber dann in der PHP gehts net mehr.
Hier der Code
PHP-Code:
<script language="Javascript">
<!--
function bbcode_bold()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[b]" + string + "[/b]";
focus();
}
}
function bbcode_italic()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[i]" + string + "[/i]";
focus();
}
}
function bbcode_underline()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[u]" + string + "[/u]";
focus();
}
}
function bbcode_quote()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[quote]" + string + "[/quote]";
focus();
}
}
function bbcode_url()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[url]" + string + "[/url]";
focus();
}
}
function bbcode_img()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[img]" + string + "[/img]";
focus();
}
}
function bbcode_code()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[code]" + string + "[/code]";
focus();
}
}
-->
</script>
<table border="0" width="700" id="table1" cellspacing="0" cellpadding="0">
<tr>
<td><img border="0" src="redesign/td/mail_new.gif" width="700" height="18"></td>
</tr>
<tr>
<td style="border-left: 1px solid #9F9FA1; border-right: 1px solid #9F9FA1; border-top-width: 1px; border-bottom: 1px solid #9F9FA1" background="redesign/td_bg.png">
<table border="0" width="100%" id="table2" cellspacing="5" cellpadding="5" height="110">
<tr>
<td>
<form action="mail.php?a=sendmail&sid='.$sid.'" method="post" name="newmail">
<table width="400px" cellspacing="3" cellpadding="5">
<tr>
<th align="right">Empfänger:</th>
<td><input name="recipient" type="text" value="'.$recip.'" /></td>
</tr>
'.$bigacc.'
<tr id="messages-compose-subject">
<th align="right">Betreff:</th>
<td><input name="subject" type="text" value="'.$subject.'" /></td>
</tr>
<tr id="messages-compose-text">
<th align="right" valign="top">Text:</th>
<td><input type="button" onClick="bbcode_bold()" value=" B ">
<textarea name="text" cols="60" rows="10">'.$text.'</textarea></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Absenden" /></td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</td>
</tr>
</table>
|
|
|
31.12.2004, 14:58
|
#13
|
|
TP-Specialist
Registriert seit: Nov 2004
Ort: Ich komme aus dem Zauberwald
|
Php ist eine serverseitige Skriptsprache. Das heißt, der Server berechnet den "Code" und gibt das Ergebnis wieder aus. Weder HTML noch JavaScript sind PHP Code - in anderen Worten - er berechnet es garnicht sondern gibt den Text wieder aus.
In noch anderen Worten: Es muss laufen
Du musst lediglich aufpassen, dass du das JavaScripts Zeug nicht im PHP Code reinpackst!
PHP-Code:
<?php
//Hier beginnt php code
//..
//Hier endet er
?>
Hier könntest du jetzt html oder java ausgeben
<?php
//Hier beginnt php wieder
...
?>
und so weiter 
__________________
Zwei Dinge sind Unbestreitbar:- In einem Land, in dem Amerika Krieg führt, herrscht nachher Demokratie.
- Die Erde ist eine Scheibe!
Aktuelle Abendlektüre: Stephen King, Peter Strauch: Das schwarze Haus (Black House, 2001)
Aktuelle Bewertung: Abgesehen davon, dass der Roman mal wieder demonstriert, dass der Author geistesgestört ist, sehr träge; wenig Spannung; schlechter Erzählstil. King halt^^!
|
|
|
31.12.2004, 15:24
|
#14
|
|
TP-Supporter
Registriert seit: May 2004
Ort: Wien
|
wenn du so ein formular machen musst gibt es eine total einfache befehlssammlung von microsoft:
http://msdn.microsoft.com/library/de...commandids.asp
und hier einbeispiel forumular (hab es kommentiert hoffe du kennst dich aus  )
PHP-Code:
<html>
<head>
<title>formular zum formatieren</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="../style.css" type="text/css">
/*mit diesem kleinen script wird der formatierte text in ein hiddenfeld übergeben damit es nachher bearbeitet werden kann zb von php, denn dadurch werden eben auch die tags zb <b> übergeben*/
<script language="JavaScript">
<!--
function transfer()
{
document.forms[0].text_fertig.value = document.all.inner.innerHTML;
}
//-->
</script>
/*Wir arbeiten mit verschachtelten layers im formular hier nur die styls*/
<style type='text/css'>
#outer
{
font-family:verdana,helvetica,arial,sans-serif;
font-size:11px;
font-weight:800;
color:#232323;
background:white;
border:inset black solid 1 #000000;
padding:10;
height:300;
width:400;
}
#inner
{
font-family:verdana,helvetica,arial,sans-serif;
font-size:11px;
font-weight:400;
color:#232323;
background:white;
border:inset black solid 1 #000000;
padding:3;
overflow:auto;
text-align:left;
height:250;
width:350;
}
#button { font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
background-color: #FFFFFF;
border:inset black solid 1;
padding:3;
}
.text { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; font-weight: bold; color: #000000}
</style>
</head>
<body bgcolor="#FFFFFF" text="#000000" class="text">
<h1>Eine neue Aktion eingeben </h1>
<p>
/*das formular*/
<form action="dein.doc" method="post" onsubmit="transfer();">
<p><div class="text">Titel der Aktion:</div><input type="text" name="titel"><p>
/*hier der erste layer mit den buttons die unsere execCommandsenthalten
wichticht unselectable 'on'*/
<div id="outer" unselectable='on' align="center">
//das ist der "innere layer" wo der text eingegeben und formatiert wird
<div id="inner" contenteditable>
</div>
<br>
/*und das sind die execcommands die denn markierten text formatieren
die übersicht was alles möglich ist bei obigen url*/
<button id="button" onClick="document.execCommand('bold'); inner.focus();" unselectable='on'><strong>Fett</strong></button>
<button id="button" onclick="document.execCommand('italic'); inner.focus();" unselectable='on'><em>Kursiv</em></button>
<button id="button" onclick="document.execCommand('CreateLink'); inner.focus();" unselectable='on'>Link</button>
/*hier das hidden feld in das der text übertragen wird*/
<input type="hidden" name="text_fertig">
<input type="submit" name="speichern" value="Speichern">
</div>
</div>
</form>
</body>
</html>
|
|
|
31.12.2004, 15:47
|
#15
|
|
TP-Junior
Registriert seit: Dec 2004
Ort: köln
|
Wenn ich das JavaScript aus dem PHP Echo rausnehme geht es leider auch nicht.
Sie dann so aus
PHP-Code:
'; ?>
<script language="Javascript">
<!--
function bbcode_bold()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[b]" + string + "[/b]";
focus();
}
}
function bbcode_italic()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[i]" + string + "[/i]";
focus();
}
}
function bbcode_underline()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[u]" + string + "[/u]";
focus();
}
}
function bbcode_quote()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[quote]" + string + "[/quote]";
focus();
}
}
function bbcode_url()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[url]" + string + "[/url]";
focus();
}
}
function bbcode_img()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[img]" + string + "[/img]";
focus();
}
}
function bbcode_code()
{
with(document.forms[0].text)
{
var string = prompt("Bitte Text eingeben:");
value += " " + "[code]" + string + "[/code]";
focus();
}
}
-->
</script>
<?php
echo'
<table border="0" width="700" id="table1" cellspacing="0" cellpadding="0">
<tr>
<td><img border="0" src="redesign/td/mail_new.gif" width="700" height="18"></td>
</tr>
<tr>
<td style="border-left: 1px solid #9F9FA1; border-right: 1px solid #9F9FA1; border-top-width: 1px; border-bottom: 1px solid #9F9FA1" background="redesign/td_bg.png">
<table border="0" width="100%" id="table2" cellspacing="5" cellpadding="5" height="110">
<tr>
<td>
<form action="mail.php?a=sendmail&sid='.$sid.'" method="post" name="newmail">
<table width="400px" cellspacing="3" cellpadding="5">
<tr>
<th align="right">Empfänger:</th>
<td><input name="recipient" type="text" value="'.$recip.'" /></td>
</tr>
'.$bigacc.'
<tr id="messages-compose-subject">
<th align="right">Betreff:</th>
<td><input name="subject" type="text" value="'.$subject.'" /></td>
</tr>
<tr id="messages-compose-text">
<th align="right" valign="top">Text:</th>
<td>
<input type="button" onClick="bbcode_bold()" value=" B ">
<textarea name="text" cols="60" rows="10">'.$text.</textarea></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Absenden" /></td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</td>
</tr>
</table>
|
|
|
| |