PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : text-smilies durch img's ersetzen?


andreas87
07.12.2002, 23:00:04
hi,

ich habe ein kleines porblem bei ersetzen von text-smilies [ :) ] zu img's.

fehlermeldungen:
Warning: REG_EMPTY:hempty (sub)expression in c:apachehtdocsvor1gbsmilie.php on line 4
Warning: REG_EPAREN:eparentheses not balanced in c:apachehtdocsvor1gbsmilie.php on line 5
Warning: REG_EPAREN:eparentheses not balanced in c:apachehtdocsvor1gbsmilie.php on line 10

die zeilen:
4: $msg_s3 = eregi_replace(":|","<img scr='3.gif'>",$msg_s2);
5: $msg_s4 = eregi_replace(":(","<img scr='4.gif'>",$msg_s3);
10: $msg_s10 = eregi_replace(":p","<img scr='10.gif'>",$msg_s9);

wer findet hierbei einen fehler?

danke schonmal in voraus
andreas

Ben20
07.12.2002, 23:46:05
Warum den eregi ?? Nimm doch str_replace();


http://www.selfphp.com/funktionsreferenz/string_funktionen/str_replace.php

andreas87
07.12.2002, 23:57:45
danke!

funktioniert jetzt.

andreas

|Coding
08.12.2002, 05:13:01
ÄHM...

eigendlich nimmt man für html keine einfachen hochkommas ('), da nimmt man doppelte (") oder keine hochkommas.

Progman
08.12.2002, 13:20:15
einfache Anführungszeichen (') darf auch in HTML bei Attributen verwendet werden. Aber ich hab grad den Link zu den Docs dazu. Aber hast schon recht, man sollte " statt ' benutzen.

MiH
10.12.2002, 13:13:59
es ist egal ob double oder single qoutes hauptsache es werden attribute gequotet.

links:
http://www.w3.org/TR/xhtml1/#h-4.4
http://www.w3.org/TR/html4/about.html#h-1.2.1

Erazor
12.12.2002, 19:30:50
" wird aber lieber gesehen.

Andreas87 war einfach faul und hat die " nicht escapen wollen.
Außerdem wäre '<img src="wasauchimmer.gif">' schneller gewesen, weil PHP da nicht Variablen parsen will ;)

btw: ( Klammer und | Pipe sind Steuerzeichen von regulären Ausdrücken... die muss man escapen. Das war der ursprüngliche Fehler.
Beim Doppelpunkt bin ich mir nicht sicher...
Außerdem empfehlen so ziemlich alle die pcre_* funktionen statt ereg* funktionen zu nehmen, weil die schneller und flexibler sind.

so far Erazor

just my Senf ;)