perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 27
Click for quality!




11.02.2012 / 19:49

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  CGI: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragProblem mit sprintf und/oder substr bei Sonderzeichen
Seitenanfang
Guten Morgen Leutz,

also ich hab folgendes Problem und zwar lese ich aus der MySql Datenbank die Artikel-Titel aus, welche als UTF-8 vorliegen.
Wegen dem Layout, müssen die Artikel-Titel, welche länger als 50 Zeichen sind abgeschnitten werden und ans Ende wird dann " ..." angehängt.
Das klappt auch alles soweit ganz gut, bloss gibt es Probleme bei Umlauten und Sonderzeichen, welche mir anfangs nicht aufgefallen waren.

Beispiel:
Original Text (64 Zeichen lang):
Scalextric Anbauteile für Ferrari F40 “Rangers” “weiß”

Abgeschnittener Text (ab 50 Zeichen):
Scalextric Anbauteile für Ferrari F40 “Rangers� ...

Jedesmal wenn ein Umlaut oder Gänsefüsschen oder irgend ein anderes Sonderzeichen genau an der 50den stelle ist und gekürzt wird, kommt unterm Mac im Firefox ein Fragezeichen und unter Windows im IE ein leeres Viereck.

Wie könnte ich das Problem beheben? Hat wer eine Idee?

Hier mal die Funktion:
----------------------


my $o = "";

my $titeltext = $dv->getTitle();

if (length($titeltext) < 50)
{
$o .= $titeltext;
}
else
{
#$o .= sprintf("%.50s ...",$titeltext);
$o .= substr($titeltext,0,50)." ...";
}

return $o;

Würd mich auf ein Lösungsvorschlag freuen :)
Danke

Grüße

Datum: 17.12.2008-10:05

Beitragre: Problem mit sprintf und/oder substr bei Sonderzeichen
Seitenanfang
huhu :D ist schon etwas her, aber hat den keiner einen lösungsvorschlag???

Datum: 16.01.2009-16:29

-






-
-