BBCode

Akihisa

Well-known member
ID: 332118
L
21 Oktober 2008
165
13
Hallo,
ich hab mal wieder ein Problem.
Ich möchte gern einen BBCode erstellen, der folgendermaßen aufgebaut ist:

zB
[deck]
//Maindeck
4 Flooded Strand
4 Island

//Spells
3 Counterspell
[/deck]

daraus soll werden:

HTML:
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
     <tr>
       <td class="quotecodeheader"> Deckliste </td>
    </tr>
    <tr>
       <td class="deckbody"> Maindeck<br />
                                      4 Flooded Strand<br />
                                      4 Island</td>
      </td>
             <td class="deckbody"> Spells<br />
                                     3 Counterspell
                                      
      </td>
    </tr>
</table>

Folgenden Code habe ich bereits. Dieser fügt den Text aber leider nur in ein <td>-Tag ein. Er sollte aber nach den // ein neues <td> anfangen.

PHP:
// Declare the format for [deck] layout
            $DeckLayout = '<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
                                <tr>
                                    <td class="quotecodeheader"> Deckliste</td>
                                </tr>
                                <tr>
                                   <td class="deckbody"> $1</td>
                                </tr>
                           </table>';
                     
            // Check for [deck] text
            $Text = preg_replace("/\[deck\](.+?)\[\/deck\]/is","$DeckLayout", $Text);

Ich hoffe ihr könnt mir weiterhelfen
Danke

MfG Akihisa
 
Schau mal ob der Code vielleicht geht. Hab den jetzt allerdings nicht getestet:D

PHP:
$DeckLayout = '<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
                                <tr>
                                    <td class="quotecodeheader"> Deckliste</td>
                                </tr>
                                <tr>
                                   <td class="deckbody"> $1</td>

            <td class="deckbody">$2
                                      
      </td>

                                </tr>
                           </table>'; 

$Text = preg_replace("|\[deck](.*)//(.*)\[/deck\]|Uism","$DeckLayout", $Text);