dedlfix: Ausgabe mal mit Leerzeichen mal ohne??

Beitrag lesen

echo $begrüßung;

Nun, wenn sie beim "Anschauen" richtig sind, muss es wohl am "Auslesen" liegen.
Das hatte ich schon vermutet, aber wenn sie immer falsch ausgelesen würden oder einzelne falsch ausgelesen würden könnte ich das noch irgendwie nachvollziehen da aber keine Regelmäßigkeit festzustellen ist kapiere ich das nicht...

Eine generelle Datenverfälschung bei den auslesenden Funktionen wäre sicher nicht unbemerkt geblieben, so häufig wie dieser Vorgang in der freien Wildbahn stattfindet.

Kann es an der Verschlüsselung liegen? Nachdem die Daten ausgelesen worden, werden sie in eine csv.Datei geschrieben diese wird dann verschlüsselt (über mcrypt) und via ftp übertragen auf der anderen Seite entschlüsselt und bearbeitet und hier laufen dann die Fehlermeldungen auf.

Selbstverständlich. Jeder falsch ausgeführte Verarbeitungsschritt kann eine Datenverfälschung zur Folge haben. Als Tipp kann ich dir nur geben, die Daten direkt nach jedem Bearbeitungsschritt zu begutachten. Notfalls mit einer Ausgabe der Hex-Werte, denn Freiraum ist nicht immer Leerzeichen, und manchmal steht zwischen zwei Zeichen ein unsichtbares (das kann dann aber kein Leerzeichen sein).

CSV ist auch kein wirklich genormtes Format. Normalerweise gibt es aber Regeln, wie mit bestimmten Zeichen umzugehen ist. Siehe http://de.wikipedia.org/wiki/CSV_(Dateiformat).

mcrypt() ist auch ein getestetes Verfahren, einen Datenverlust, und noch dazu in Form eines Leerzeichens, halte ich nicht für sehr wahrscheinlich.

FTP hat zwei Übertragungsmodi, Binär und ASCII. Verschlüsselte Daten sind als Binärdaten zu betrachten. Eine Zeilenendezeichenbehandlung, wie sie bei ASCII stattfindet dürfte mehr Schaden anrichten als nur verschwundene Leerzeichen. Deshalb vermute ich, dass ihr Binär einsetzt und halte die FTP-Übertragung auch nicht als die Ursache. Um ganz sicher zu gehen, kann man ja Prüfsummen vor und nach der Übertragung berechnen und diese vergleichen (beispielsweise einen MD5-Hash berechnen).

Die Idee mit der Prüfsumme lässt sich natürlich auch auf alle anderen Stellen des Übertragungsweges anwenden. Also vor jeder Behandlung und nach jeder "Ent"handlung die Prüfsummen vergleichen, sollte doch dem Aufspüren des Verursachers dienlich sein.

echo "$verabschiedung $name";