Viktor: externes Programm via PHP aufrufen

Hallo,

ich habe folgendes Problem:

ich möchte auf meinem Server via PHP den Subversion Client (ein Versionierungstool) aufrufen und auf einem im Netzwerk befindlichen Client einen Checkout der Daten (auf Freigabe) durchführen ... ich erhalte dabei folgende Fehlermeldung:

svn: Fehler beim Ermitteln der Groß-/Kleinschreibung von \192.168.1.15\temp\

Rufe ich den svn Client direkt auf der Kommandozeile auf dem Server auf, funktioniert alles wunderbar. Das Problem muss meiner Meinung also bei der Übergabe des Kommandos an die php-Funktionen exec(), system(), etc. liegen. Bevor ich den String an die php-Funktion übergebe überprüfe ich ihn nochmal, und da scheint alles korrekt zu sein.
Um auf den andere Rechner im Netzwerk zugreifen zu können verwende ich UNC-Pfade. Also Backslashes ... ich glaube die php-Funktionen stellen damit irgendetwas an, so dass der checkout-Pfad nicht mehr stimmt.
Irgendjemand eine Idee? Wäre super wenn mir jemand weiterhelfen könnte. Vielen Dank schon mal im voraus!

Grüße, Viktor

  1. Hallo Viktor ;~)
    (Oder besser "Dobriu Dien"?)

    Versuche es hier:
    http://www.hotscripts.com/

    Mit freundlichen Grüßen
    Stefano Albrecht

    1. Oder hier:
      http://www.ekiwi.de/

      Sollte eigentlich alles in einen Eintrag...

      Mit freundlichen Grüßen
      Stefano Albrecht

      1. Oh Gott... alles ist verrückt!
        Ich hab den falschen Thread beantwortet!

        Mit freundlichen Grüßen
        Stefano Albrecht

  2. echo $begrüßung;

    Um auf den andere Rechner im Netzwerk zugreifen zu können verwende ich UNC-Pfade. Also Backslashes ... ich glaube die php-Funktionen stellen damit irgendetwas an, so dass der checkout-Pfad nicht mehr stimmt.

    Das ist eine Möglichkeit, da der \ ein Zeichen mit besonderer Bedeutung ist und zwar sowohl in ''-Strings als auch in ""-Strings. Siehe: http://de.php.net/manual/en/language.types.string.php
    Lass dir doch mit echo anzeigen, was PHP draus macht.

    echo "$verabschiedung $name";

    1. Hi,

      ich konnte das Problem jetzt eingrenzen und denke die Quelle des Fehlers gefunden zu haben. Besagte Fehlermeldung gibt svn nur dann aus, wenn irgendetwas mit dem Pfad des Targets nicht stimmt, also z.B. das Verzeichnis nicht gefunden wurde. D.h., dass die php-Funktionen zum ausführen von externen Programmen (wie system), meinen UNC Pfad, den ich übergebe irgendwie verstümmeln. echo liefert mir jedenfalls die korrekte Ausgabe, als bis zur Übergabe an die PHP-Funktion ist der String in Ordnung. Irgendeiner eine Idee, wie ich an system oder exec, etc. einen UNC-Pfad übergeben kann?

      Danke jedenfalls für die Antwort

      Bye, Viktor

      echo $begrüßung;

      Um auf den andere Rechner im Netzwerk zugreifen zu können verwende ich UNC-Pfade. Also Backslashes ... ich glaube die php-Funktionen stellen damit irgendetwas an, so dass der checkout-Pfad nicht mehr stimmt.

      Das ist eine Möglichkeit, da der \ ein Zeichen mit besonderer Bedeutung ist und zwar sowohl in ''-Strings als auch in ""-Strings. Siehe: http://de.php.net/manual/en/language.types.string.php
      Lass dir doch mit echo anzeigen, was PHP draus macht.

      echo "$verabschiedung $name";