benni: leerzeichen am ende einer variable au ner textdatei

hi!

also mein problem...schwer zu erklären, fang mer mal ganz von vorne an...also:

ich habe ein formular, in das ich verschiedene daten eingebe. die werden dann übertragen in eine datei, in der diese daten in eine txt-datei reingeschrieben werden. folgendes script:

$datei = fopen("mysqldaten.txt","w");
$absatz = chr(13) . chr(10);
fputs($datei,"$hostname$absatz");
fputs($datei,"$mysqluser$absatz");
fputs($datei,"$mysqlpw$absatz");
fputs($datei,"$dbname$absatz");
fputs($datei,"$tablename");

die datei wird geöffnet und dann werden die daten in die txt-datei reingeschrieben, wobei $absatz einen absatz bildet (wer hätte es gedacht) weil sonst alles in einer reihe reingeschrieben wird.

später dann will ich die daten wieder auslesen, und zwar zeilenweise mit folgendem script:

$datei = fopen("mysqldaten.txt","r");
$hostname = fgets($datei, 100);
$mysqluser = fgets($datei, 100);
$mysqlpw = fgets($datei, 100);
$dbname = fgets($datei, 100);
$tablename = fgets($datei, 100);

das geht auch, aber: an diese variablen wird immer noch ein leerzeichen angehängt, was sie unbrauchbar macht. (mysql_connect("$hostname") wird ja zu mysql_connect("localhost "). das geht halt net...).

was mache ich falsch, dasses ein leerzeichen anhängt bzw. kann ich auch das leerzeichen nach dem auslesen der datei irgendwie wegkriegen?

besten dank im vorraus,
benni

  1. ich habe was gefunden, wenn du die varieable wieder aufrufst bearbeitest du die mit eine trim, also

    $variable=trim($variable);

    dann werden am anfang und ende die leerzeichen entfernt

  2. Aloha!

    also mein problem...schwer zu erklären, fang mer mal ganz von vorne an...also:

    ich habe ein formular, in das ich verschiedene daten eingebe. die werden dann übertragen in eine datei, in der diese daten in eine txt-datei reingeschrieben werden. folgendes script:

    $datei = fopen("mysqldaten.txt","w");
    $absatz = chr(13) . chr(10);
    fputs($datei,"$hostname$absatz");
    fputs($datei,"$mysqluser$absatz");
    fputs($datei,"$mysqlpw$absatz");
    fputs($datei,"$dbname$absatz");
    fputs($datei,"$tablename");

    Warum so kompliziert? Benutze die Funktionen implode() und explode(), um eine einzige Zeile Text in die Datei zu schreiben und wieder zu lesen. Beispiele sind angegeben:

    http://www.php.net/manual/de/function.implode.php
    http://www.php.net/manual/de/function.explode.php

    split() und join() sind gleichwertige Funktionen.

    Mit trim() kann man dann noch nacharbeiten, um leere Zeichen um den Text herum zu entfernen.

    - Sven Rautenberg