| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Gast
Beiträge: n/a
| Dyn. Textfeld, Absatz wird zu 2 Zeilensprüngen
Hi zusammen, ich lade aus MySQL via PHP mit einem loadVars Objekt dynamische Inhalte in ein Textfeld. Das Textfeld selbst befindet sich in einem Movieclip in der Library, hat Univers als eingebettetes Typeface, Linespacing von 4 pt, ist weder HTML-fähig, auswählbar oder eingerahmt. Als Typ ist Multiline definiert. Da meine Textlänge variiert, habe ich in dem folgenden Script textfeld.autosize=true; definiert. PHP-Code: Nur wenn ich im CMS einen Absatz für den Text, der dort ausgelesen wird, mittels <enter> setze, wandelt Flash den in 2 Zeilensprünge um. Automatische Zeilenumbrüche funktionieren hingegen ohne Probleme. Ich habe schon versucht, das ganze mit Standardlinespacing, Systemschriftart (nicht eingebettet), mit Multiline-No Wrap, ohne autosize=true; usw.… Es funktioniert einfach nicht. Eventuell liegt es ja daran, wie die Daten nach Flash geschickt werden oder wie der Text im CMS definiert ist? Hier der Head der Eingabemaske des CMS… PHP-Code: Die Werte aus der DB konvertiere ich nach UTF-8 und ersetze die kleinen Umlaute in einer Klasse in große Umlaute, da manche Server eine PHP.ini wegen der locale Settings im strtoupper() keine Umlaute mit einbeziehen. Hier die Datei. Verantwortlich für den Inhalt ist die Variable &text= PHP-Code: Ich hab auch noch ein paar Bilder zur Erklärung/Veranschaulichung: ![]() ![]() ![]() ![]() Liebe Grüße Yves Geändert von 409coffeemaker (26-06-2004 um 12:32 Uhr) |
|
| | #2 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
da hast du viel geschrieben ;-)))) was ich eigentlich nachgesehen hätte ist aber nicht dabei. wenn der computer 2 returns darstellt, dann sind auch 2 returns da. sieh bitte mal den text nach, der in das textfeld geschrieben wird. wieviele "\r" und "\n" und "<br>" und <p> gibt es denn?
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (26-06-2004 um 17:12 Uhr) |
| | |
| | #3 (permalink) |
| Gast
Beiträge: n/a
|
Hi, es sind eben nicht 2 returns da… Schau mal hier… http://www.flashhilfe.de/flash/movie...=117&link=code Ich weiß nur noch nicht, wie ich den eingegeben Zeilenumbruch als Zeichen darstellen soll, um ihn dann in einer Funktion wie dieser durch den Hexcode %D0 zu ersetzen… PHP-Code: Yves |
|
| | #4 (permalink) |
| Level up Registriert seit: Jun 2001 Ort: Bocholt
Beiträge: 4.155
|
hallo, hgseib wollte Deine Gedanken schon in die richtige Richtung lenken und Du bist nich drauf eingegangen... Nirgendwo taucht bisher der Text auf, der geladen wird und in dem liegt schon die Ursache, viele Editoren fügen bei einem Zeilenumbruch die Steuerzeichen '/r/n' ein und in flash ist sowohl '/r' (steht für return) als auch '/n'(steht für newline) ein Zeilenumbruch mach mal im loadVars-Objekt folgendes: ActionScript:
Alois
__________________ -Spuckt mir auf den Stuhl, ich will im Grünen sitzen- |
| | |
| | #5 (permalink) |
| Gast
Beiträge: n/a
|
Hallo alle zusammen, ich wollte nicht besserwisserisch oder unbelehrbar sein… tut mir leid. Ich habe nun euren Ratschlag befolgt, aber es funktioniert nicht. Ich glaube, es liegt daran, das ich die Texte nicht in einem Texteditor abspeichere, sonder über ein PHP CMS in eine Datenbank einpflege und später wieder auslesen. Woher sollten da die von euch genannten Steuerzeichen herkommen… Ich nehme an, das PHP schon „Steuerzeichen“ dafür benutzt… aber welche? Hier ein Snipplet, wie ich euren Ratschlag versucht habe, anzuwenden. PHP-Code: Yves |
|
| | #6 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
mach einen track-befehl in flash und lass dir den text ausgeben, der in das textfeld geschrieben wird. der ist offensichtlich faul. und dann gibt es soch das this.text=this.text.split("/r/r").join("/r"); falls alle returns doppelt vorkommen.
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (26-06-2004 um 20:22 Uhr) |
| | |
| | #7 (permalink) | |
| Gast
Beiträge: n/a
| Zitat:
Es müssen Backslashes sein, anstatt Slashes. Ich hab's auch einfach per Copy&Paste übernommen und mich gewundert, warum es nicht funktioniert… So geht's: PHP-Code: Liebe Grüße Yves | |
|
| | #8 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
ääääh, wir wollten nur testen ob du 8 gibst ;-)
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |