BBCode
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
beispiel
brauchen
buchstabe
code
datei
einfacher gehen
fehler
forum
http
inhalt
input
kilometer
not
offset
platzhalter
support
url
wort
zahl
zeile
- 
    
    Und zwar wollte ich es so machen das man, wenn man zum Beispiel bei mir ins GB ue scheibt das es sich dann in ü und das es sich so speichert weil sonst werden die Buchstaben dann nicht richtig angezeigt. Ich habe ja was gefunden aber bekomme es trotzdem nicht richtig hin.
 http://www.tutorials.de/forum/php-tutorials/279124-bbcode-mit-php-parsen.html
 
 Habe mir jetzt die noch dazu gemacht:
 $bb = preg_replace('/n/', "<br/>n", $bb); $bb = preg_replace('/ue/', "ün", $bb); $bb = preg_replace('/ae/', "än", $bb); $bb = preg_replace('/oe/', "ön", $bb); $bb = preg_replace('/eszett/', "ün", $bb);
 
 Aber da kommt jetzt immer Warning: preg_replace() [function.preg-replace]: Compilation failed: PCRE does not support L, l, N, U, or u at offset 1 in /home/webpages/lima-city/andre2005/html/test.php on line 8
 
 in Zeile 8 steht:
 $bb = preg_replace('/ue/', "ün", $bb);
 
 Wo ist mein Fehler?
 
 
 Beitrag geändert: 26.10.2008 16:09:16 von andre2005
- 
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden! lima-city: Gratis werbefreier Webspace für deine eigene Homepage 
- 
    
    könntest du deinen beitrag auch mal editieren, und die zeilenumbrüche setzten? ich find es schrecklich 3 Kilometer nach rechts scrollen zu müssen...
 
 mfg
- 
    
    probiers mal mit Escapen von dem u.
 Also aus dem
 $bb = preg_replace('/ue/', "ün", $bb);
 ein
 $bb = preg_replace('/ue/', "ün", $bb);
 
 Wie es aussieht ist das u ein platzhalter für irgend eine interne Variable, und muss dann natürlich Escaped werden ;)
 
 //Edit:
 hm... dieser Backslash hat irgendwie keine lust...
 der muss halt dierekt vor das u von dem /ue/
 
 Beitrag geändert: 27.10.2008 18:43:38 von pichunter
- 
    
    versuchs mal lieber mit "str_replace", sollte einfacher gehen, da du ja keine komplizierten suchkriterien hast
- 
    
    mein code
 <? function bbcode ($bbcode) { $bbcode=preg_replace ("/[b](.*?)[/b]/si", "<b>1</b>", $bbcode); $bbcode=preg_replace ("/[input](.*?)[/input]/si", "<textarea cols="30" rows="3" readonly="yes">1</textarea>", $bbcode); $bbcode=preg_replace ("/[i](.*?)[/i]/si", "<i>1</i>", $bbcode); $bbcode=preg_replace ("/[s](.*?)[/s]/si", "<s>1</s>", $bbcode); $bbcode=preg_replace ("/[u](.*?)[/u]/si", "<u>1</u>", $bbcode); $bbcode=preg_replace ("/[center](.*?)[/center]/si", "<center>1</center>", $bbcode); $bbcode=preg_replace ("/[right](.*?)[/right]/si", "<p align="right" style="display:inline;">1</p>", $bbcode); $bbcode=preg_replace ("/[url=(.*?)](.*?)[/url]/si", "<a href=1>2</a>", $bbcode); $bbcode=preg_replace ("/[img=(.*?)](.*?)[/img]/si", "<img name='1' src='2' border="0"></img>", $bbcode); $bbcode=preg_replace ("/[def=(.*?)](.*?)[/def]/si", "<li class="menu2"> 1 <span> - 2</span></li>", $bbcode); $bbcode = ereg_replace("n",'<br>', $bbcode); return $bbcode; } ?>
 
 in der anderen datei
 $inhalt = bbcode($inhalt);
 
 und wenn du ü zu & u u m l ; haben willst htmlspecialchars();
 
 ach ja die backslaches werden immer entfern also vor jede eckige klammer und die zahlen \1 und \2 brauchen 2 backslashes
 
 und überall wos noch nötig ist musste halt escapen
 
 
 Beitrag geändert: 30.10.2008 16:25:45 von andre-morillon
- 
    
    
 
 
 Aber wenn des in einem Wort drinnsteht zum beispiel Neueroeffnung ghet des net
 Kann mir mal irgend eine mal helfen?
 
 
 
 Beitrag geändert: 1.11.2008 20:21:20 von andre2005
- 
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden! lima-city: Gratis werbefreier Webspace für deine eigene Homepage 
