Probleme beim Speichern

Alles, was PHP betrifft, kann hier besprochen werden.

Probleme beim Speichern

Postby Haraldl » 20. July 2004 18:38

Hallo,

ich habe XAMPP und kopiere per PHP eine Datei (abc.txt) durch auslesen und speichern mit fputs (abc.bak). Habe sonst nichts verändert (glaube ich zumindest). Wenn ich die Datei jetzt wieder auslese, kommt alles durcheinander. PHP ist nicht mehr in der Lage, per explode() aufzuteilen.

Rufe ich im phase5 die Datei abc.bak auf und speichere unter UNIX oder verändere nur ein Blank und speichere dann noch einmal ab, klappt alles.

Hat jemand einen Tip?

Würde mich freuen.

Gruß

Haraldl
Haraldl
 
Posts: 19
Joined: 03. January 2003 13:38
Location: Berg bei Neumarkt

Postby Wiedmann » 20. July 2004 18:45

Dann zeig halt mal genau was du da machst.
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Haraldl » 20. July 2004 18:58

gerne, aber soll ich den ganzen Quellcode posten?
Ich habe ein CMS-gebaut, das im Text auch Bilder zeigt, welche auch verändert werden können.

Bin sicher keine Leuchte und wurschtle mich so durch. Wahrscheinlich brüllt ihr Profis vor Lachen über meine komplizierten Wege.

Abder wenn´s hilft. Nur wie?

Gruß

Haraldl
Haraldl
 
Posts: 19
Joined: 03. January 2003 13:38
Location: Berg bei Neumarkt

Postby Wiedmann » 20. July 2004 19:12

Naja,

der relevante Code für's Auslesen und Schreiben sollte ja nur ein paar Zeilen (ab 4) sein...


Ansonsten hilft dir vielleicht auch copy() weiter?
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Haraldl » 20. July 2004 19:35

Also gut...

speichern:
if ($datei)
{
fputs($datei, "$header&&$text");
fclose($datei);
}
if($bilder)
{
$handle = fopen ($wasbak, "r");
while (!feof($handle))
{
$buffer = fgets($handle, 4096);
}
fclose ($handle);

$handle1=ereg_replace("<br>","\n<br>",$buffer);
$handle1=explode("\n",$handle1);
$anzahl=count($handle1);
for ($i=0;$i<$anzahl;$i++)
{
$bool=ereg("b_end",$handle1[$i]);
if($bool)
{
$handle1[$i]=str_replace("<br>","",$handle1[$i]); //möchte keinen Umbruch vorher haben
}
else
{

}
$text1=$text1.$handle1[$i];

}
$text1=stripslashes($text1);
$datei1=fopen($wasbak, "w+");
if ($datei1)
{
fputs($datei1,"$text1");
fclose($datei1);
}

auslesen:

$datei = fopen($was,"r");
$daten = fread ($datei, filesize ($was)); fclose($datei);

$daten =explode("&&",$daten);
.
.
.
$txt=explode("\n",$daten[1]); //teilt text in Zeilen auf
$anzahl=count($txt); //zählt Zeilen
for ($i=0;$i<$anzahl;$i++)
{
.
.

$bild_o=explode("b_end",$txt[$i]); //hier entsteht Mist
//es müsste $bild_0[0] meine Bildangabe kommen, weil die
steht vor b_end.
Es kommt aber der Text ab der ersten Zeile...

war das hilfreich zum Helfen?

Gruß

Haraldl
Haraldl
 
Posts: 19
Joined: 03. January 2003 13:38
Location: Berg bei Neumarkt

Postby Haraldl » 20. July 2004 20:32

Hallo nochmals,

habe den Fehler gefunden. Es lag nicht an dem geposteten Schnipsel.
Hatte eine falsch Umwandlung (\n) gemacht. Da kann dann nichts gescheites rauskommen.

Danke für die Mühen...

Haraldl
Haraldl
 
Posts: 19
Joined: 03. January 2003 13:38
Location: Berg bei Neumarkt


Return to PHP

Who is online

Users browsing this forum: No registered users and 1 guest