PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : leerzeile, wo keine soll


silberlocke
31.03.2005, 17:35:50
Hallo!
Hab mal wieder ein kleines problem:

Ich möchte an Datei einen Eintrag in die nächste Zeile schreiben, allerding kommt immer eine Leerzeile, die vorher nicht da ist.

$fnew = fopen($berich,a);
$nl = chr(13) . chr(10);
fputs ($fnew, $nl);
fputs($fnew, "$nr|||".time()."|||".$_SESSION['vorname']."|||".$_SESSION['nachname']."|||".$_POST['ereignis']."|||".$_POST['text']."|||");


Gruß, Silberlocke

|Coding
31.03.2005, 17:37:55
Kannst Du mal ein Bsp. posten?

silberlocke
31.03.2005, 18:03:18
Die Daten selber sind nur zur Probe und irrelevant.
Das
$nl = chr(13) . chr(10);
hab ich mal irgendwo aufgeschnappt und benuzte es seitdem für Zeilenumbrüche und hatte damit bisher auch noch keine Probleme.


1|||02.05.04|||Karl|||Meier|||1.Herren - Lüneburg|||<h4>hbsafjklags</h4><br>gsdkjfg sgjisfdopg shnjuvpi aehrpia<br>a hfivü hasfivp hsuavp ah<br>ahvfp adhfv upa|||
2|||04.06.04|||Karl|||Meier|||Steinbeck - 1.Herre|||<h4>hbsafjklags</h4><br>gsdkjfg sgjisfdopg shnjuvpi aehrpia<br>a hfivü hasfivp hsuavp ah<br>ahvfp adhfv upa|||
3|||02.08.04|||Karl|||Meier|||Kruste|||truz|||
4|||05.10.04|||Karl|||Meier|||asdf|||jklö|||truz|||

5|||1112282779|||Karl|||Meier|||reg|||dfgsdf|||

|Coding
31.03.2005, 18:06:42
Das ist aber dein Problem. Kommentier den Teil "$nl = chr(13) . chr(10);" mal aus:

// $nl = chr(13) . chr(10);

Das ist ja so nicht Falsch, aber deinen Zeilen wird bereits ein Zeilenumbruch angefügt, so dass Du keinen mehr einsetzen musst.

chr(13) = r
chr(10) = n

Zusammen rn = Zeilenumbruch auf Win-Systemen.

silberlocke
31.03.2005, 18:23:54
Das hab ich schon probiert. Dann gibts gar keinen Umbruch und der Eintrag wird an die letzte Zeile angehängt.
Wodurch sollte denn der Zeilenumbruch angefügt werden?

|Coding
31.03.2005, 18:28:58
Versuch mal das:

$nl = "n";

silberlocke
31.03.2005, 18:43:57
Das hab ich mir jetzt auch überlegt, da das ein Linux-Server ist. Jetzt funktioniert es.

aber bei folgendem Bespiel funktioniert es nach der Windows-Methode:

$fnew = fopen($daten_sp_halbserie,"w");

if ($fnew)
{
flock($fnew,2);
$nl = chr(13) . chr(10);

if ($array > 0)
{
for($x=0;$x<count($array);$x++)
{
fputs ($fnew, trim($array[$x]));
fputs ($fnew, $nl);
}
}
fputs ($fnew, $log);

}


Ich weiß aber nicht, warum.