webForumDet fria alternativet

Problem med dubbla radbrytningar vid importering av text till flash

Flash

2 svar · 473 visningar · startad av Sibylla

Medlem sedan juli 200046 inlägg
Frågan#1

Tjo

Har suttit o slitit mitt hår med detta hela dagen, laddar in html formaterad text från en mysql databas via amfphp (http://www.amfphp.org/) till flash.

Allt fungerar jättebra förutom att flash (eller php:n) lägger till en extra radbrytning efter varje rad.

Ser det t.ex. ut så här i databasen:

hej hej
en radbrytning

två radbrytningar <b> fet text</b>

Så ser du ut så här när texten traceas i flash (eller i ett textfält)

hej hej

en radbrytning

två radbrytningar <b> fet text</b>

Använding av <br> verkar inte göra någon skillnad.

Så här hämtas texten från databasen:


			global $conn;
			$conn = mysql_connect($dbhost, $dbusr, $dbpass);
			mysql_select_db($dbname, $conn);

			$result=mysql_query("SELECT * FROM textpattern WHERE ID=$id");

			while($row = mysql_fetch_assoc($result)) {
			  $string = $row["Body"];
			}
			$utf8string = utf8_encode(trim($string));

			return $utf8string;

Förslag på lösning skulle uppskattas grymt mycket!

Medlem sedan maj 2003750 inlägg
#2

Flash gör om alla radbrytningar med \n (newline character) eller \r (carriage return) till \r\n Så ett trick för att komma runt problemet är köra en "replace" på "\r\n" till \r, \n eller <br>.

T.ex. såhär:

myString = myString.split("\r\n").join("\n");

/Mirandir

Medlem sedan juli 200046 inlägg
#3

Grymt mycket tack! Funka perfekt

266 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)