dedlfix: PHP-Datei im Hintergrund ausführen bei Klick

Beitrag lesen

Tach!

Obwohl die Seite, die dieses Script per Link aufruft, in UTF-8 ist die erzeugte Textdatei Ansi.

Weder das Betriebssystem noch PHP nimmt irgendeine (Um-)Kodierung beim Schreiben von Dateien vor. Was du da reinschreibst ist allein deine Sache, also auch wie es kodiert ist. Und weil das so ist, wird beim Schreiben (und auch Lesen) von Dateien keinerlei irgendwo gemachte Kodierungsangabe berücksichtigt.

Habs dann mal so (utf-8 )probiert wie im Manual beschrieben:

file_put_contents('test.txt',utf8_encode(file_get_contents('test.txt')*1+1), LOCK_EX);


> Immer noch Ansi.  
  
Woran machst du denn fest, dass es Ansi sei? Was ist denn der Inhalt der Datei und wie sieht er denn in Bytes bei den verschiedenen Kodierungsarten aus?  
  

> Dann noch ein Versuch:  
> header ('Content-Type: text/html; charset=UTF-8');  
  
Das ist die Auskunft an den Browser, dass die Kodierung der nachfolgenden Ausgabe UTF-8 sei. Es ist keinerlei Handlungsanweisung für irgendeinen Prozess, UTF-8 zu erzeugen.  
  

> file\_put\_contents('test.txt',utf8\_encode(file\_get\_contents('test.txt')\*1+1), LOCK\_EX);  
> header("HTTP/1.0 204 No Content");  
> ?>[/code]  
  
Und wenn du 204 und No Content schickst, dann ist eine Kodierungsangabe für etwas nicht vorhandenes überflüssig.  
  
  
dedlfix.