• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Textarea

Hallo
Ich habe ein kleines Problem mit dem Tag <textarea>
Ich will per JavaScript und php denn Inhalt einer Textarea in eine Datei reinschreiben
Denn text bekomme ich so
Javascript:
var str = document.getElementById("fild").value;
und in php schreibe ich denn inhalt so in die Datei rein:
PHP:
$str = $_GET["str"];

$text = $fopen("test.txt","w");
fwrite($text,$str);
fclose($text)

Das Funktioniert auch super aber es werden alle Zeilenumbrüche und Tabs entfernt
Ich habe keine Idee mehr wie ich diese Problem lösen kann

MFG Christoph
 
Zuletzt bearbeitet:
Werbung:
Ich bezweifle, dass das hier gepostete Script funktioniert
PHP:
$text = $fopen("test.txt","w");
$fopen? :oops:

Wie kommst du darauf, dass Zeilenumbrüche entfernt werden?
 
oh das mit dem $fopen war ein tipp Fehler in meinem Code steht es natürlich richtig da
und wie ich darauf komme ich schreibe denn text in die textarea schicke es dann an denn php code und schaue danach in die Datei z. B

Code:
hallo
    wie geht es
ihnen

sieht dann in der Datei so aus
Code:
hallowie geht esihnen
 
Werbung:
Wenn du das mit PHP wieder ausliest, musst du nl2br verwenden
 
ich glaube es liegt nicht an php sondern vielleicht an dem Ajax Request das ich benutze bin mir aber nicht sicher,
auf jeden Fall hat es mit nl2br in php auch nicht funktioniert außerdem muss ich es leider per ajax Request an php senden weil es im Hintergrund passieren muss ohne das ich die Seite neu laden muss
 
Werbung:
ich habe das nach diesem forum auch aus probiert aber es funktioniert auch nicht
Hier ist einfach mal mein php und Js Code vielleicht hilft es ja:
PHP:
$Datei = $_GET["Datei"];
$text = fopen("../info.txt","w");
fwrite($text,$Datei);
fclose($text);

Javascript:
var Datei = document.getElementById("writer").value;

var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function () {
    if (this.readyState == 4 && this.status == 200) {
        $("#writer").val(xhttp.responseText);
    }
};
xhttp.open("GET", "../php/openFile.php?Datei=" + Datei, true);
xhttp.send();
 
ich habe es mit diesem code schnipsel versucht
var myLineBreak = myTextareaVal.replace(/\r\n|\r|\n/g,"\n");
es hat aber nicht funktioniert und <br> tags kann ich nicht benutzen da ich denn text etwas später wieder in eine
textarea einfügen muss
 
Werbung:
Beispiel:
PHP:
<?php
   if (file_exists("./xx.txt"))
       $txt = file_get_contents("./xx.txt");
   else
       $txt = "";
 
   if (isset($_POST['area']))
   {
      $fp = fopen("./xx.txt", "a+");
     
      if (!$fp)
          die ("Error");
     
      fputs($fp, $_POST['area']);
     
      fclose($fp);
   }
?>
<html>
<form action="" method="post">
  <textarea name="area"><?php echo $txt; ?></textarea>
  <input type="submit" value="Los">
</form>
</html>
 
Eigentlich ist eine Textarea denkbar schlecht dafür geeignet, den Inhalt zu formatieren. Was ist denn der Hintergrund bei der ganzen Sache?

ich nehme eine Textarea, weil dort nicht so wie beim div mit dem Attribut contenteditable automatisch html tags eingefügt werden außerdem darf ich nur die Formatierung nehmen die auch die Text Datei erkennt z.b \r\n
Denn es dürfen in der Datei keine weiteren sichtbaren Inhalte stehen die nicht vorher in die Textarea geschrieben wurden sind.
 
Zurück
Oben