HTML 4 YOU
New member
Hey !
Ich habe ein Problem, und zwar lese ich in einer PHP eine Datei (ist ein Quelltext) aus und fülle den dort enthaltenen Text in eine Textarea, allerdings nicht mit PHP, sondern mit JS über das onclick-Event. Der dann entstehende Code sieht wie folgt aus:
Wenn ich aber einen Code mit Zeilenumbrüchen habe, wird er ja so:
Und dies wird als Fehler erkannt, weil kein endendes String Literal vorhanden ist, da ja die Zeile gebrochen wird. Deswegen benutze ich immer die PHP Funktion nl2br(), aber iwie lässt sie Lücken aus, denn das Endergebnis sieht nacher so aus:
Wie man sieht, wandelt es zwar um, aber die \nl bleiben ummer noch da
Hier die entscheidensten Code-Schnipsel:
Stück aus AJAX Datei erstellung:
Stück aus der AJAX-Auslesung:
Ist das immer so? Wie kann ich das Problem lösen?
Hoffe ihr könnt mir helfen
LG HTML 4 YOU
Ich habe ein Problem, und zwar lese ich in einer PHP eine Datei (ist ein Quelltext) aus und fülle den dort enthaltenen Text in eine Textarea, allerdings nicht mit PHP, sondern mit JS über das onclick-Event. Der dann entstehende Code sieht wie folgt aus:
HTML:
<a href="#" onclick="document.getElementById('highlightbox').innerHTML ='CODE'; document.getElementById('highlightbox').style.display = 'block'; return false;">LINK</a>
Wenn ich aber einen Code mit Zeilenumbrüchen habe, wird er ja so:
HTML:
<a href="#" onclick="document.getElementById('highlightbox').innerHTML ='CODE
CODE
CODE'; document.getElementById('highlightbox').style.display = 'block'; return false;">LINK</a>
Und dies wird als Fehler erkannt, weil kein endendes String Literal vorhanden ist, da ja die Zeile gebrochen wird. Deswegen benutze ich immer die PHP Funktion nl2br(), aber iwie lässt sie Lücken aus, denn das Endergebnis sieht nacher so aus:
HTML:
<a href="#" onclick="document.getElementById('highlightbox').innerHTML = 'Test<br />
<br />
Test<br />
<br />
<br />
Test'; document.getElementById('highlightbox').style.display = 'block'; return false;">Test</a>
Wie man sieht, wandelt es zwar um, aber die \nl bleiben ummer noch da
Hier die entscheidensten Code-Schnipsel:
Stück aus AJAX Datei erstellung:
PHP:
$sourcecode = htmlentities(nl2br($_POST['sourcecode']));
// Weiter unten
if(!file_exists('/********/projekte/'.$projektlink.'/sources/'.$filename)) {
$file = fopen('/*******/'.$projektlink.'/sources/'.$filename, 'w+');
fwrite($file, $sourcecode);
if(!$file)
echo 'Es ist ein Fehler beim Speichern der Datei aufgetreten, bitte versuchen Sie es erneut.';
else {
fclose($file);
echo 'Ihre Datei wurde erfolgreich erstellt.';
}
Stück aus der AJAX-Auslesung:
PHP:
for($i = 0; $i < count($files); $i++) {
echo '
<tr>
<td><a href="#" onclick="document.getElementById(\'highlightbox\').innerHTML = \''.file_get_contents('/************/projekte/'.$projektlink.'/sources/'.$files[$i]).'\'; document.getElementById(\'highlightbox\').style.display = \'block\'; return false;">'.preg_replace('/\.txt/', '', $files[$i]).'</a></td>
<td>'.convertFilesize(filesize('/*********/projekte/'.$projektlink.'/sources/'.$files[$i]), 4).'</td>
</tr>
';
}
Ist das immer so? Wie kann ich das Problem lösen?
Hoffe ihr könnt mir helfen
LG HTML 4 YOU