Textbereiche auswählen

ruNN0r

Erfahrenes Mitglied
hi, da bin ich mal wieder mit einem Problem! ^^
Ich speicher in einer MYSQL datenbank einen wert in einem Textfeld (Typ: mediumtext).
Dort steht z.B drin:
Achtung
Sie machen einen Fehler
Achtung
wenn ich das nun normal ausgeben ohne nl2br() wird alles zusammengeschrieben mit nl2br() werden unterandem die [Enter] berücksichtigt.
Mein Problem ist nun ich will bei der Ausgabe alle 3 Zeilen in 3 Variabeln setzen.
Und zwar so:
$v1="Achtung"
$v2="Sie machen einen Fehler"
$v3="Achtung"

wie bekomme ich das zustande?
P.S ich darf den MYSQL datensatz NICHT ändern und auch den type nicht.

Ich bin total ratlos wie ich das schaffen soll. wenn ja jetzt für jedes [Enter] ein wert stehen würde könnte ich diesen verwenden und die Zeile somit mit explode() ausgrenzen aber auch das bekomme ich net hin :(
 
PHP:
<?php
// Aus deiner Datenbank..
$str = 'Achtung
Sie machen einen Fehler
Achtung';

// Zeilenumbrüche vereinheitlichen (Linux/Unix, Mac und Windows)
$str = preg_replace('~(\r\n)|(\r)~','\n',$str);
// Zeilen in ein Array schreiben
$lines = explode('\n', $str);

for($i=0, $j=count($lines); $i<$j; $i++)
{
	// variable Variable...
	${'var_'.$i} = $lines[$i];
}

echo $var_0.'<br />';
echo $var_1.'<br />';
echo $var_2;
?>
 
Zuletzt bearbeitet:
danke dir erstmal für die hilfe auch einigermaßen jedoch leider NUR beim ersten datensatz.

Ich lasse die daten mit einer while schleife abfragen und habe das alles dann logischerweise in der Schleife. beim erstem Datensatz klappt das jedoch bei den anderen stehen dann alles im $var_0 ^^ warum verstehe ich nun auch net ^^
 
Bisschen kreativ sein, Mensch ;)
PHP:
<?php
// Aus deiner Datenbank..
$data = array('Achtung
Sie machen einen Fehler
Achtung', 'Zweite
Zeile','Und
So Weiter');

// Zähler für variable Variable
$i = 0;
// Hier steht jetzt deine while-Schleife...
foreach($data as $str) /* while($row = mysql_fetch_array($query)) */
{
	// Zeilenumbrüche vereinheitlichen (Linux/Unix, Mac und Windows)
	$str = preg_replace('~(\r\n)|(\r)~','\n',$str);
	// Zeilen in ein Array schreiben
	$lines = explode('\n', $str);	
	
	for($j=0, $k=count($lines); $j<$k; $j++)
	{
		// variable Variable...
		${'var_'.$i} = $lines[$j];
		$i++;
	}	
}

echo $var_0.'<br />';
echo $var_1.'<br />';
echo $var_2.'<br />';
echo $var_3.'<br />';
echo $var_4.'<br />';
echo $var_5;
// usw...
?>
 
Zurück