limitierte Ausgabe bringt probleme!

Diskutiere limitierte Ausgabe bringt probleme! im Webmaster Hilfe / Programmierer Forum Forum im Bereich Computerprobleme; function limitString($text, $maxCharacters) { $dots = substr("...", 0, $maxCharacters); // Wenn $maxCharacters < 3 werden die Punkte gekürzt......

  1. disler

    disler Erfahrener Benutzer

    Dabei seit:
    05.07.2007
    Beiträge:
    1.654
    Zustimmungen:
    0
    Ort:
    Schweiz
    PHP:
    function limitString($text$maxCharacters)  {
        
    $dots substr("..."0$maxCharacters); // Wenn $maxCharacters < 3 werden die Punkte gekürzt... 
        
    if (strlen($text) > $maxCharacters)  {
            
    $text substr($text0$maxCharacters strlen($dots)) . $dots;
        }
        return 
    $text;
    }
    Dieser Code limitert den Code, auf die Anzahl zeichen, die weiter untem im Code fest definiert wird. Nun gibts aber ein problem. Da der Code aus der DB rausgelesen wird, und in der DB schon als HTML Code gespeichert wurde, kann es nun sein, das er zum Beispiel &uum (anstatt: ü ausgibt!). Eben wegen dem Limitstring! Gibt es nun eine möglichkeit, das ich sagen kann, er soll erst abschneiden, nachdem das nächste leerzeichen folgt??
     
  2. Anzeige

    schau mal hier: Windows-Wartungs-Tool. Viele Probleme lassen sich damit einfach beheben. Oftmals ist der PC dann auch schneller!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  3. Nico

    Nico Ehemaliges Teammitglied

    Dabei seit:
    28.10.2005
    Beiträge:
    6.676
    Zustimmungen:
    0
    Mach halt einfach ein str_replace("&auml;", "ä", $string) etc. dahinter...

    Gruß
     
  4. disler

    disler Erfahrener Benutzer

    Dabei seit:
    05.07.2007
    Beiträge:
    1.654
    Zustimmungen:
    0
    Ort:
    Schweiz
    Könntest du dies etwas genauer beschreiben bitte??
     
  5. Nico

    Nico Ehemaliges Teammitglied

    Dabei seit:
    28.10.2005
    Beiträge:
    6.676
    Zustimmungen:
    0
    PHP:
    function limitString($text$maxCharacters)  {
        
    $text str_replace("&auml;""ä"$text);
    $text str_replace("&Auml;""Ä"$text);
    $text str_replace("&ouml;""ö"$text);
    $text str_replace("&Ouml;""Ö"$text);
    $text str_replace("&uuml;""ü"$text);
    $text str_replace("&Uuml;""Ü"$text);
    $text str_replace("&szlig;""ß"$text);
        
    $dots substr("..."0$maxCharacters); // Wenn $maxCharacters < 3 werden die Punkte gekürzt... 
        
    if (strlen($text) > $maxCharacters)  {
            
    $text substr($text0$maxCharacters strlen($dots)) . $dots;
        }
        
    $text htmlentities($text);
        return 
    $text;
    }
    Dann werden die Entities umgewandelt.
    Leider gibts kein gegenstück zu htmlentities(), das würd dir die sache viel einfacer machen^^

    //EDit

    Argh, bin ich blöd, gibts! schau mal hier:

    http://de2.php.net/html_entity_decode

    Neuer Quellcode:

    PHP:
    function limitString($text$maxCharacters)  {
        
    $text html_entity_decode($text);
        
    $dots substr("..."0$maxCharacters); // Wenn $maxCharacters < 3 werden die Punkte gekürzt... 
        
    if (strlen($text) > $maxCharacters)  {
            
    $text substr($text0$maxCharacters strlen($dots)) . $dots;
        }
        
    $text htmlentities($text);
        return 
    $text;
    }
     
  6. disler

    disler Erfahrener Benutzer

    Dabei seit:
    05.07.2007
    Beiträge:
    1.654
    Zustimmungen:
    0
    Ort:
    Schweiz
    Danke viel mal!! Nur so ne frage! Würde es teoretisch auch mit der funktion html_entity_decode() gehen??
     
  7. Nico

    Nico Ehemaliges Teammitglied

    Dabei seit:
    28.10.2005
    Beiträge:
    6.676
    Zustimmungen:
    0
    Siehe oben.. Bin auch gerade draufgekommen^^
     
  8. disler

    disler Erfahrener Benutzer

    Dabei seit:
    05.07.2007
    Beiträge:
    1.654
    Zustimmungen:
    0
    Ort:
    Schweiz
    Danke! Nur gibt es nun ein erneutes Problem! nun schreibt er (z.B)
    so aus, und ist nicht mehr versteckt, was es davor gewesen ist! Wie könnte ich das nun ändern? Hättest du mir da ein vorschlag? Die Formatierung wird eben auch in html umgeschrieben! Dann ist wohl die erste Version doch besser! oder?
     
  9. Nico

    Nico Ehemaliges Teammitglied

    Dabei seit:
    28.10.2005
    Beiträge:
    6.676
    Zustimmungen:
    0
    Hmm.. bei der ersten dürfte das gleiche rauskommen... Das is wegen der Tags die auch umgewandelt werden..

    dann sollte man es wohl doch mit str_replace machen!

    Das geht aber am besten mit nem array in dem alle werte drin sind.. geht bestimmt schneller^^
     
  10. disler

    disler Erfahrener Benutzer

    Dabei seit:
    05.07.2007
    Beiträge:
    1.654
    Zustimmungen:
    0
    Ort:
    Schweiz
    jo, so klapts auch! Danke nochmals!
     
  11. #10 Blaxxun, 13.11.2007
    Blaxxun

    Blaxxun aka Noisy

    Dabei seit:
    06.11.2005
    Beiträge:
    6.171
    Zustimmungen:
    0
    Warum schreibst du html code und die Datenbank? o0
     
  12. disler

    disler Erfahrener Benutzer

    Dabei seit:
    05.07.2007
    Beiträge:
    1.654
    Zustimmungen:
    0
    Ort:
    Schweiz
    Damit auch andere Browser das aufrufen können, die die Zeichensätze ä, ü, ö nicht kennen!
     
  13. #12 Blaxxun, 14.11.2007
    Blaxxun

    Blaxxun aka Noisy

    Dabei seit:
    06.11.2005
    Beiträge:
    6.171
    Zustimmungen:
    0
    Kein Grund als HTMl zu speichern, dass ist wirklich ein großer Fehler.
    Du kannst die Ausgabe nach dem auslesen aus der DB immer nich bearbeiten.
    Im übrigend werden Umlaute richtig dargestellt sofern du den richtigen header etc. nutzt.

    Aber gut zu spät würde ich jetzt mal sagen.
     
  14. disler

    disler Erfahrener Benutzer

    Dabei seit:
    05.07.2007
    Beiträge:
    1.654
    Zustimmungen:
    0
    Ort:
    Schweiz
    Die Formatierung des Textes muss eben auch gespeichert werden! Wengen der Ausgabe danach! Wie sollte man denn das ohne HTML code machen???

    P.S: Der Text wird aus einem HTML EDITOR ausgelesen!
     
  15. #14 splasch., 15.11.2007
    splasch.

    splasch. Guest

    Den Html code brauchste erst bei der ausgabe. Daher ist das speichern eines Html code nicht notwendig.

    Zeilenumbrüche kann man dann auch wieder umwandeln von r/n/ auf
    .
    Daher sollte es nacher auch keine Problem bei der Ausgabe geben.

    Mfg Splasch
     
  16. disler

    disler Erfahrener Benutzer

    Dabei seit:
    05.07.2007
    Beiträge:
    1.654
    Zustimmungen:
    0
    Ort:
    Schweiz
    OK Klappt auch! Danke splash und Blaxxun!
     
  17. Anzeige

    Es ist generell erstmal empfehlenswert alle ggf. veralteten oder fehlerhaften Treiber zu scannen und auf neue zu aktualisieren. Hier kannst du einen Treiber-Scanner downloaden. Das erspart oftmals viel Ärger und hilft gegen diverse Probleme.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  18. disler

    disler Erfahrener Benutzer

    Dabei seit:
    05.07.2007
    Beiträge:
    1.654
    Zustimmungen:
    0
    Ort:
    Schweiz
    aber.. Wieso ratet ihr eigentlich davon ab??? Kann es koplikationen geben, wenn ich den HTML CODE in die Tabelle schreibe??
     
  19. #17 Blaxxun, 15.11.2007
    Blaxxun

    Blaxxun aka Noisy

    Dabei seit:
    06.11.2005
    Beiträge:
    6.171
    Zustimmungen:
    0
    Hast du doch schon gesehn oder?
    Du hattest oben Probleme damit, da ist ein Punkt.
    Der zweite Punkte ist, dass es damit schwerer würde, wenn du das Layout veränderst oder den Text z.B. als RSS Feed ausgeben willst.
    Außerdem ist doch damit mehr Speicherplatz belegt, als wenn du es jedesmal dynamisch formtieren lässt.
     
Thema:

limitierte Ausgabe bringt probleme!

Die Seite wird geladen...

limitierte Ausgabe bringt probleme! - Ähnliche Themen

  1. Probleme nur in einem von vielen WLANs

    Probleme nur in einem von vielen WLANs: Hello, finde leider keinen Ansatzpunkt für mein Problem. Mit meinem Laptop (Win 7, alle Updates, nie Probleme, Windows vor einer Woche frisch...
  2. Probleme bei Portfreigabe für FritzBox 6490 Cabel

    Probleme bei Portfreigabe für FritzBox 6490 Cabel: Halle alle zusammen, seit Installation meiner FritzBox 6490 cabel blokiert die Box die freigegeben Ports TCP für aMule 4664 und UDP für aMule...
  3. Internet Probleme mit meinem neuen Rechner(WLan-Stick)

    Internet Probleme mit meinem neuen Rechner(WLan-Stick): Guten Tag liebes Forum, ich habe ein Problem welches mir vor Stress langsam die Haare rausfallen lässt. Mein Internet funktioniert im Haus...
  4. Aldi Talk Probleme

    Aldi Talk Probleme: Hey, ich habe für meine Tochter ALDI TALK Musik Paket M abgeschlossen. Kann mir hier mal jemand erklären was das Produkt beinhaltet, bzw. mit...
  5. Upload und ping Probleme

    Upload und ping Probleme: Hallo lieber User, seit kurzem haben ich ein heftiges Problem. Mein Upload ist unterirdisch langsam und mein Ping schwankt heftig. Wir haben...