BBcode aus Select Feld in Textfeld einfügen!
#2
Ok ein neues Problem. Ich erstelle wie gesagt einen BBcode Editor und für Zentrierten Text weis ich wie ich es machen muss nur für links und rechts ausgerichteten taxt nicht.

Hier der Code

PHP-Code:
//Javascriptteil
<script type="text/javascript">
<!--
function 
insert(aTageTag) {
  var 
input document.forms['formular'].elements['text'];
  
input.focus();
  
/* für Internet Explorer */
  
if(typeof document.selection != 'undefined') {
    
/* Einfügen des Formatierungscodes */
    
var range document.selection.createRange();
    var 
insText range.text;
    
range.text aTag insText eTag;
    
/* Anpassen der Cursorposition */
    
range document.selection.createRange();
    if (
insText.length == 0) {
      
range.move('character', -eTag.length);
    } else {
      
range.moveStart('character'aTag.length insText.length eTag.length);      
    }
    
range.select();
  }
  
/* für neuere auf Gecko basierende Browser */
  
else if(typeof input.selectionStart != 'undefined')
  {
    
/* Einfügen des Formatierungscodes */
    
var start input.selectionStart;
    var 
end input.selectionEnd;
    var 
insText input.value.substring(startend);
    
input.value input.value.substr(0start) + aTag insText eTag input.value.substr(end);
    
/* Anpassen der Cursorposition */
    
var pos;
    if (
insText.length == 0) {
      
pos start aTag.length;
    } else {
      
pos start aTag.length insText.length eTag.length;
    }
    
input.selectionStart pos;
    
input.selectionEnd pos;
  }
  
/* für die übrigen Browser */
  
else
  {
    
/* Abfrage der Einfügeposition */
    
var pos;
    var 
re = new RegExp('^[0-9]{0,3}$');
    while(!
re.test(pos)) {
      
pos prompt("Einfügen an Position (0.." input.value.length "):""0");
    }
    if(
pos input.value.length) {
      
pos input.value.length;
    }
    
/* Einfügen des Formatierungscodes */
    
var insText prompt("Bitte geben Sie den zu formatierenden Text ein:");
    
input.value input.value.substr(0pos) + aTag insText eTag input.value.substr(pos);
  }
}
//-->
</script>
  <
table cellspacing="0" cellpadding="0" width="400" border="0">
  <
tr>
  <
td colspan="2">
      <
a href="#" onClick="insert('[b]', '[/b]')"><img src="grafiken/bold.gif" alt="" width="21" height="20" border="0"></a>
    <
a href="#" onClick="insert('[i]', '[/i]')"><img src="grafiken/italic.gif" alt="" width="21" height="20" border="0"></a>
    <
a href="#" onClick="insert('[u]', '[/u]')"><img src="grafiken/underline.gif" alt="" width="21" height="20" border="0"></a>
    <
a href="#" onClick="insert('[align=center]', '[/align]')"><img src="grafiken/justifycenter.gif" alt="" width="21" height="20" border="0"></a>
    <
a href="#" onClick="insert('[align=left]', '[/align]')"><img src="grafiken/justifyleft.gif" alt="" width="21" height="20" border="0"></a>
    <
a href="#" onClick="insert('[align=right]', '[/align]')"><img src="grafiken/justifyright.gif" alt="" width="21" height="20" border="0"></a>
    <
a href="#" onClick="insert('[li]', '[/li]')"><img src="grafiken/insertorderedlist.gif" alt="" width="21" height="20" border="0"></a>
    <
a href="#" onClick="insert('[ol]', '[/ol]')"><img src="grafiken/insertunorderedlist.gif" alt="" width="21" height="20" border="0"></a>
  </
td>
  </
tr>
  <
tr>
  <
td width="330" class="td_forms">
  <
select name="color" style="background-color: #666666; font-size: 12px;">
      <
option >Schriftfarbe</option>
      <
option style="color: #ff0000;" onClick="insert('[color=red]', '[/color]')">Rot</option>
    <
option style="color: #000000;" onClick="insert('[color=black]', '[/color]')">Schwarz</option>
    <
option style="color: #ffffff;" onClick="insert('[color=white]', '[/color]')">Weis</option>
    <
option style="color: #0000FF;" onClick="insert('[color=blue]', '[/color]')">Blau</option>
    <
option style="color: #00FF00;" onClick="insert('[color=green]', '[/color]')">Grün</option>
    <
option style="color: #333333;" onClick="insert('[color=gray]', '[/color]')">Grau</option>
    <
option style="color: #FFFF00;" onClick="insert('[color=yellow]', '[/color]')">Gelb</option>
    <
option style="color: #FF6600;" onClick="insert('[color=orange]', '[/color]')">Orange</option>
  </
select>
  &
nbsp;&nbsp;
  <
select name="size" style="background-color: #666666; color: #000000; font-size: 12px;">
      <
option >Schriftgröße</option>
      <
option onClick="insert('[size=8px]', '[/size]')">8px</option>
    <
option onClick="insert('[size=10px]', '[/size]')">10px</option>
    <
option onClick="insert('[size=12px]', '[/size]')">12px</option>
    <
option onClick="insert('[size=14px]', '[/size]')">14px</option>
    <
option onClick="insert('[size=16px]', '[/size]')">16px</option>
    <
option onClick="insert('[size=18px]', '[/size]')">18px</option>
    <
option onClick="insert('[size=20px]', '[/size]')">20px</option>
    <
option onClick="insert('[size=22px]', '[/size]')">22px</option>
    <
option onClick="insert('[size=24px]', '[/size]')">24px</option>
  </
select>
  &
nbsp;&nbsp;
  <
select name="art" style="background-color: #666666; color: #000000; font-size: 12px;">
      <
option >Schriftart</option>
      <
option onClick="insert('[font=arial]', '[/font]')">Arial</option>
    <
option onClick="insert('[font=Times New Roman]', '[/font]')">Times New Roman</option>
  </
select>
  </
td>
  </
tr>
  <
tr>
  <
td colspan="2">
  <
textarea name="text" cols="45" rows="10"></textarea>
  </
td>
  </
tr>
  </
table>

//PHP Parserteil
<?php

$edSearch
=array("#\[b\](.*)\[/b\]#",
                
"#\[i\](.*)\[/i\]#",
                
"#\[u\](.*)\[/u\]#",
                
"#\[li\](.*)\[/li\]#",
                
"#\[ol\](.*)\[/ol\]#",
                
"#\[center\](.*)\[/center\]#",
                
"#\[left\](.*)\[/left\]#",
                
"#\[right\](.*)\[/right\]#",
                
"#\[color=(.*?)\](.*)\[/color\]#",
                
"#\[size=(.*?)\](.*)\[/size\]#"
                "#\[font=(.*?)\](.*)\[/font\]#"
        
);
$edReplace=array("<b>$1</b>",
                 
"<i>$1</i>",
                 
"<u>$1</u>",
                 
"<li>$1</li>",
                 
"<ol>$1</ol>",
                 
"<center>$1</center>",
                 
"<left>$1</left>",
                 
"<right>$1</right>",
                 
"<span style=\"color:$1\";>$2</span>",
                 
"<span style=\"font-size:$1\";>$2</span>"
                 "<span style=\"font-famaly:$1\";>$2</span>"
        
);
echo 
preg_replace($edSearch,$edReplace,$text);

?>

Also das parsen für alle anderen Sachen passt und klappt wunderbar nur wie muss ich das für links und rechts ausgerichteten text?

Danke
Zitieren



Nachrichten in diesem Thema
BBcode aus Select Feld in Textfeld einfügen! - von litterauspirna - 22.02.2008, 22:11

Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Kommentar einfügen bei deaktivierten Java script udog 1 1.745 30.07.2004, 22:13
Letzter Beitrag: Hulot