[PHP] Datei vor FTP-Upload bearbeiten



  • Das würde leider nicht funktionieren.

    Die Nutzer meiner Seite können .html-Seiten hochladen, welche jeweils den Seiteninhalt beeinhalten und der Server setzt dann um diese Seiten das Gerüst (Menü, ...).
    Nur muss die Gerüst-bau-funktion aufgerufen werden -> und das soll in die Dateien eingefügt werden.
    Wie z.B.:

    <?php
    include_once("frame.php");
    BuildFrame();
    ?>
    
    <html>
    <!--
    ....
    -->
    </html>
    

    M.T.



  • Sorry falls ich es falsch verstanden habe aber es müsste doch wie folgt gehen.

    # ./ftpupload/userdatei.html
    <html>
    <!--
    ....
    -->
    </html> 
    ##################
    
    # useranzeige.php
    <?php
    include("header.php");
    
    include("./ftpupload/userdatei.html");
    
    include("footer.php");
    ?>
    ##################
    

    Oder muss ich mir das so vorstellen, wie bei den Freehostern, wo der User
    eine Datei hochladen kann und dann vom Hoster eine Werbung eingebaut wird?



  • 2oopuls schrieb:

    Oder muss ich mir das so vorstellen, wie bei den Freehostern, wo der User
    eine Datei hochladen kann und dann vom Hoster eine Werbung eingebaut wird?

    Das trifft s so zirka. Es soll nicht die hochgeladene Datei extra über ein Script aufgerufen werden, sondern direkt die veränderte Datei.

    Beispiel:
    User lädt hoch:

    <html>
    ...
    </html>
    

    Server schreibt um:

    <?php
    //do and show something
    ?>
    
    <html>
    ...
    </html>
    

    -> und diese Datei soll auch auf dem FTP-Server sein.

    An sich würde mir eine Möglichkeit genügen, eine Datei von einer Webadresse auf meinen FTP-Server zu bekommen.

    M.T. @ *love_editing_posts* 🙂



  • Ok verstehe aber ohne fwrite schaut es dann echt schlecht aus.
    Selbst wenn du die Datei vorher mit tmpfile(); bearbeiten würdest
    brauchst du fwrite dazu.



  • Und auf dem Rechner lokal vor dem Upload mit der Datei etwas anstellen?
    Alle sonstigen Techniken sind ok ... JS, (Java) <- bin darin nicht so bewandert 😉

    BTW: Ist das mit dem Upload einer Internetseite per FTP wirklich nicht möglich? (z.B. www.test.de/index.html auf den Server zu laden)

    M.T.



  • Möglich schon, du kannst mit fopen(); die Internetseite laden, auf
    deinem Server zwischenspeichern und im gleichen Zug per FTP auf deinen
    FTP-Server laden. Nur hast du da wieder das Problem des zwischenspeicherns,
    wozu du ja fwrite brauchst.



  • Ich hab dir hier nochmal ein Beispiel geschrieben, wie du die Datei aus
    dem Web lädst und auf dem FTP Server speicherst.

    <?php
    $tmpfile = "./tmpfile.ftp";
    
    // Website laden und zwischenspeichern
    $con1 = fopen("http://www.irgendeinedomain.de/test.html","r");
    $con2 = fopen($tmpfile,"w+");
    
    while ($buffer = fgets($con1,2048))
    {
    	fwrite($con2,$buffer);
    }
    fclose($con2); 
    fclose($con1);
    
    // FTP upload starten
    $con = ftp_connect("www.deinedomain.de");
    ftp_login($con,"username","passwort");
    ftp_fput ($con, "/ftp-dir/meine.html", $tmpfile, FTP_ASCII);
    ?>
    


  • Nur leider kann ich ohne einen eigenen Server mit Admin-Rechten kein fwrite einsetzen (zumindest bei meinem Anbieter). Trotzdem danke für deinen Code.

    Weiß einer von euch, ob fwrite bei kostenlosen Accounts (z.B. Tripod) unterstützt wird?

    Thx

    M.T.



  • Ich war jetzt ne Zeit lang nicht online und hab das Problem auf ne andere Weise gelöst ...

    @2oopuls: Wollte mich noch mal für deine Hilfe-Versuche bedanken.

    Gruß

    M.T.



  • Kein Problem, hat ja auch nicht viel gebracht. Leider 😉


Anmelden zum Antworten