irgendjemand: fopen problem

Hi,

ich bin gerade dabei mir einen FTP-Client mit PHP zu programmieren.
Nun mein Problem..
Mit..
$handle = fopen("ftp://user:pass@host.de/file.php", "r");
$filesize = filesize("ftp://user:pass@host.de/file.php");
$file=fread($handle, $filesize);
fclose($handle);
echo $file;
.. lese ich den Inhalt von ftp://user:pass@host.de/file.php aus, das klappt auch.
Und mit..
$handle= fopen("ftp://user:pass@host.de/file.php", "w");
$output= fwrite($handle, "INHALT");
fclose($handle);
.. möchte ich in die Datei reinschreiben doch dann kommt die Fehlermeldung..
Warning: fopen(ftp://user:pass@host/file.php) [function.fopen]: failed to open stream: Remote file already exists and overwrite context option not specified<br /> FTP server reports 213 3 in C:\Programme\xampp\htdocs\ftp\ftp\config.php on line 70
.. Und wenn ich anstatt w, a nehme funktioniert es auf einmal.
Woran kann das liegen?

Thanx schon mal im voraus ;)

  1. Hi,

    $file=fread($handle, $filesize);

    .. lese ich den Inhalt von ftp://user:pass@host.de/file.php aus, das klappt auch.

    Und mit..

    welchen Wert hat hier $file?

    $handle= fopen("ftp://user:pass@host.de/file.php", "w");
    $output= fwrite($handle, "INHALT");
    fclose($handle);

    Ciao.

    1. Hi,

      »» $file=fread($handle, $filesize);
      welchen Wert hat hier $file?

      fread($handle, $filesize) den Inhalt der Datei.
      Wie gesagt das funktioniert ja auch.
      Nur..
      $handle= fopen("ftp://user:pass@host.de/file.php", "w");
      $output= fwrite($handle, "INHALT");
      fclose($handle);
      funktioniert nicht, nur wenn ich anstatt w, a benutze.
      Aber dann wird der zu schreibene Inhalt ans Ende des Dateiinhaltes geschrieben und das ist ja nicht mein Ziel^^.

  2. Hi,

    Warning: fopen(ftp://user:pass@host/file.php) [function.fopen]: failed to open stream: Remote file already exists and overwrite context option not specified

    Woran kann das liegen?

    An dem, was da steht - "file already exists and overwrite context option not specified".

    Also machst du jetzt was? Letzteres natürlich.

    Bei fopen kannst du context options mitgeben, und wie du diese erzeugst und welche es für den Kontext FTP gibt, findest du ebenfalls im Manual beschrieben.

    MfG ChrisB

    --
    Light travels faster than sound - that's why most people appear bright until you hear them speak.
  3. Hi,
    Problem gelöst.
    musste vor..
    $handle= fopen("ftp://user:pass@host.de/file.php", "w");
    $output= fwrite($handle, "INHALT");
    fclose($handle);
    .. unlink("ftp://user:pass@host.de/file.php"); setzen, weil wie ich mitbekommen hab fopen("ftp://user:pass@host.de/file.php", "w"); versucht "ftp://user:pass@host.de/file.php" anzulegen.