?!? strange ?!?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • ?!? strange ?!?

    hallo, schaut euch mal bitte folgenden Code an !
    PHP-Code:
          $limit 512000;

           if (
    disk_free_space($destinationPath) > $limit)
          {
           while (!
    feof($s_handle) && ($sourceData <= $limit))
               
    $sourceData .= fread($s_handle,1024);
            
    $copyResult fwrite($d_handle,$sourceData);
          }
          else
          {echo 
    "ERROR: Es steht nicht genügend Webspace zur Verfügung<br>"; } 
    (vorher öffne und danach schließe ich natürlich die Dateien).

    Dieses Skript funktioniert anscheinend einwandfrei. Es kopiert eine Datei von Quellserver A nach Zielserver B, auf Server B liegt auch das Skirpt.
    Allerdings, bei PHP-Skripten gibt es einen unerwünschten Seiteneffekt, die Skripte werden nicht einfach nur kopiert, sondern zu meiner vollständigen Verwirrung AUSGEFUEHRT. D.h. auf dem Zielserver B befindet sich kein Skript mehr sondern eine PHP-Datei ohne PHP.

    Hat Jemand eine Ahnung warum, der PHP-Code beim kopieren ausgeführt wird und wie kann ich das verhindern.
    Ich hab schon eine Lösung, aber die gefällt mir nicht wirklich: Auf den Quellserver liegen die PHP-Skripts als *.P-Dateien und nach dem Kopieren werden sie zu *.PHP umbenannt. Funktioniert, aber umgeht das Problem nur ohne es zu verhindern.

    wer weis Rat. Thx.
    Zuletzt geändert von nowis; 08.10.2003, 10:55.
    Gruß

    Ansgar

    _______________________________________
    fighting for peace is like fucking for virginity

  • #2
    wenn du von server a was auf server b kopieren willst, dann läuft das über das http-protokoll, das fopen öffnet also die datei http://www.domain.tld/datei.php

    warum sollte fopen ein anderes ergebnis vom server a bekommen als du, wenn du http://www.domain.tld/datei.php in die adresszeile deines browsers eintippst?
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      warum sollte fopen ein anderes ergebnis vom server a bekommen als du
      Verstehe. Ich müsste also PHP-Files über FTP schieben, damit sie nicht ausgeführt werden.

      PS: Wie findest Du die Lösung mit dem Umbenennen ?
      Gruß

      Ansgar

      _______________________________________
      fighting for peace is like fucking for virginity

      Kommentar


      • #4
        wenn der typ vom anderen server mitmacht...
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          naja, er muss mitmachen, weil er eigentlich garnichts davon merkt.


          SERVER A:
          fopen(http://www.test.eu/TEST.P);

          SERVER B:
          fopen(home/user/bla/bla/TEST.PHP);
          Gruß

          Ansgar

          _______________________________________
          fighting for peace is like fucking for virginity

          Kommentar


          • #6
            Original geschrieben von nowis
            naja, er muss mitmachen, weil er eigentlich garnichts davon merkt.
            er muss dich datei nochmal mit der endung *.p auf dem server ablegen oder?
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #7
              er muss dich datei nochmal mit der endung *.p auf dem server ablegen oder?
              Überleg....
              Nein, denke ich nicht. Der Prozess öffnet die Quelldatei zum lesen und die Zeildatei zum schreiben. Auf dem Zielserver wird dann eine *.PHP-Datei angelegt bzw. überschrieben, der Inhalt wird binär transferiert, fertsch. Sicherlich muss der Zielserver wissen welche Datei (*.p) er lesen muss, aber in seinem Filesystem wird deswegen keine angelegt, denke Ich.
              Gruß

              Ansgar

              _______________________________________
              fighting for peace is like fucking for virginity

              Kommentar


              • #8
                welche datei auf dem quellserver willst du denn öffnen?

                die *.php geht nicht, das hast du ja mittlerweile gemerkt
                ergo musst du ja logischerweise ne *.p-datei öffnen und wer legt die an?

                skripte wirst du so nicht klauen können (is auch gut so)
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  skripte wirst du so nicht klauen können (is auch gut so)
                  ´
                  ersteinmal, ich will überhaupt keine Skripte klauen !!!! Ich schreibe gerade ein Tool für meine Dipl.Arbeit, wofür ich diese Funktionalität benötige, keinesfalls um etwas zu klauen.

                  welche datei auf dem quellserver willst du denn öffnen?
                  Wenn ich das mit fopen() richtig verstanden hab, wird wenn eine Datei nicht vorhanden ist, eben eine angelegt !!!
                  Gruß

                  Ansgar

                  _______________________________________
                  fighting for peace is like fucking for virginity

                  Kommentar


                  • #10
                    erklärst du mir das thema der arbeit?

                    fopen erzeugt u. U. die datei,wenn sie nicht gefunden wird, aber...
                    1. du willst von nem fremden server ne datei öffnen
                    2. php-dateien gehen nicht, da die geparsed werden
                    3. *.p-dateien öffnen geht nicht, weil die nicht da sind
                    4. *.p-dateien anlegen wird nicht gehen, oder hast du über's netz schreibrechte auf diesem server?
                    5. selbst wenn es ginge, wie willst du die *.php-datei nach *.p kopieren?
                      kopieren würdest du ja auch mit fread und fwrite, d. h. du musst die php-datei mit fread einlesen
                    6. siehe 1.
                      dem anderen webserver isses ja egal, warum du eine datei liest, der schickt die auch durch den php-interpreter, wenn du sie danach nochmal auf seinem webspace speichern willst...
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar


                    • #11
                      erklärst du mir das thema der arbeit?
                      Ich schreibe eine Assistenztool für den Hotel- und Gaststättenbereich, dass es einem IT-Leihen ermöglicht einen Internetauftritt zu generieren und ihn zu Pflegen. Dies soll durch zwei unterschiedliche Programme gelöst werden.

                      1. Der "Assistent"
                      er baut das Grundgerüst eines Internetauftrittes auf, d.h. alle Navigationselemente funktionieren, aber es gibt noch keinen Inhalt auf den Seiten.
                      2. Das CMS
                      ein Content Managment System das den User die Möglichkeit gibt, auf einfache Weise, seinen Internetauftritt mit Inhalt zu füllen und zu pflegen.

                      zu 1. Der User beantwortet diverse Fragen, die dem Programm ein Einblick geben wie sein Hotel strukturiert ist, dann schlägt es dem Benutzer diverse Rubriken für seine Internetpräsenz vor. Anschließend wählt noch er welche Sprachen er anbieten will. Als nächstes kann Er sich zwischen 16 verschiedenen Designs entscheiden (4 Layouts * 4 Farbschemas)

                      Und hier kommt fopen() ins Spiel wenn der User alle Einstellungen getätigt hat, klickt er auf einen Knopf und alles was er braucht (Bilder, Skripte etc.) wird auf seine URL geschrieben die er vorher angegeben hat, da dies aber nicht so einfach funktioniert, muss er zu vor eine Datei per FTP auf seinen Webspace stellen, die JETZT aufgerufen wird und sich von meinem Zielserver A alle Dateien holt und so den gesamten Internetauftritt, zumindest das Grundgerüst, aufbaut. Diese "Aufbaudatei" befindet sich also im selben FS wie die zukünftige Homepage und hat alle Rechte um Dateien, endenten Sie mit P oder PHP, zuerstellen.
                      Gruß

                      Ansgar

                      _______________________________________
                      fighting for peace is like fucking for virginity

                      Kommentar


                      • #12
                        generier diese seite selbst inklusive ftp-zugangsdaten

                        die datei soll der user hochladen und danach aufrufen

                        in der datei verbindest du dich mit deinem server per ftp, wechselst in das verzeichnis für diesen user und kopierst alles an die stelle, an der das skript bei user liegt
                        Ich denke, also bin ich. - Einige sind trotzdem...

                        Kommentar


                        • #13
                          generier diese seite selbst inklusive ftp-zugangsdaten
                          Gute Idee!

                          in der datei verbindest du dich mit deinem server per ftp, wechselst in das verzeichnis für diesen user und kopierst alles an die stelle, an der das skript bei user liegt
                          Das ganze mit FTP zu lösen, hat ich mir eigentlich auch vorgestellt, hab' es dann leider nicht richtig hinbekommen und die Lösung über http hat ganz gut geklappt.

                          die datei soll der user hochladen und danach aufrufen
                          Verständnisfrage! Warum soll der User das hochladen? Kann ich das nicht selber, wenn er mir die FTP-Daten gibt, oder meinst Du weil ich das www Verzeichnis nicht kenne und der User vielleicht auch nicht!
                          Gruß

                          Ansgar

                          _______________________________________
                          fighting for peace is like fucking for virginity

                          Kommentar


                          • #14
                            bin mal 'ne stunde (oder so) offline !!!
                            Gruß

                            Ansgar

                            _______________________________________
                            fighting for peace is like fucking for virginity

                            Kommentar


                            • #15
                              ob dir jeder user ftp-zugriff auf seinen server gibt, wage ich zu bezweifeln

                              ich meinte, dass du auf deinem server nen ftp-user anlegst und das skript sich mit deinem server verbindet, dazu muss er es bei sich hochladen. das sollte er ja hinbekommen
                              Ich denke, also bin ich. - Einige sind trotzdem...

                              Kommentar

                              Lädt...
                              X