lokale datei in script auf server includen

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

  • lokale datei in script auf server includen

    Hallo...

    Auch auf die Gefahr hin, dass man so was normal nicht macht, hier mein Problem:

    Ich habe eine Datei auf einem Rechner in einer Domain. Diese liegt in einem Netzwerkverzeichnis, so dass Sie nach dem Login von jedem Rechner aus unter der selben Adresse zu erreichen ist. In der Datei befindet sich ein Schlüssel, der den Login auf die Seite im Netz erlauben soll.

    PHP-Code:
    <?php

        $filename 
    "h:\key.inc.php";
        
        if (
    file_exists($filename))
        {
            include ( 
    "h:\key.inc.php");

            if (isset (
    $key) && $key == "service.mitarbeiter")
            {
                
    header("Location: index_m.php");
                die;
             }
             
             if (isset (
    $key) && $key == "service.verwaltung")
            {
                
    header("Location: index_v.php");
            die;
             }
             
             if (isset (
    $key) && $key == "service.administrator")
            {
                
    header("Location: index_a.php");
            die;
             }
             
             else
             {
             die (
    "Kein Zugriff!<br/>Bitte beantragen Sie die Erlaubnis beim Administrator.");
             }
        }
        else
        {
            die(
    "Keine Datei!<br/>Bitte beantragen Sie die Erlaubnis beim Administrator.");
        }
        
    ?>
    So lange das Script auf dem lokalen Server läuft geht es wunderbar. Wenn ich es aber hochlade, findet er die Datei nicht mehr.
    Ich habe rausgefunden, dass include sich auf das lokale System, also dann auf den Server bezieht.
    Wie schaffe ich es denn nun die Datei auf dem lokalen System des Rechners auszulesen, wenn sich das Script auf dem Server befindet?
    Wenn die Sonne der Kultur niedrig steht, werfen selbst Zwerge einen Schatten. (Karl Kraus)

  • #2
    Ich würde dir vorschlagen, dass du mittels eines ftp Scripts die Datei auf den Server ziehst und dann den inlcude() machst. Alles was via http geht dürfte imho nicht funzen, weil die Datei erst du den PHP Parser gejagt wird und du als Ergebnis bestenfall die Ausgabe mit echo bekommst, aber nicht irgendwelche Vars oder deren Werte.

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      wenn der server ebenfalls windows ist, und in der gleichen domäne hängt, dann sollte es für den auf nicht weiter schwer sein, auf ein SMB-Netzlaufwerk zuzugreifen.. du musst dann nur den korrekten pfad zur datei angeben.. ggf. eine Laufwerksbuchstaben für die netzwerk-resource zuweisen.. unter Linux müsstest du die resource irgendwo im lokalen dateisystem einhängern und dann den pfad anpassen...

      ist der server nicht in derselben domäne registriert, so kann er auch nicht über SMB zugreifen...

      in dem fall wäre tatsächlich ftp die richtige lösung.. dazu muss dann auf dem "rechner" ein ftp-server laufen (oder auf einem rechner in der domäne, der wiederum zugriff auf das netzlaufwerk hat). der fremde server kann sich dann die datei herunterziehen und verwenden..

      greetz, high
      Good programming is 40% experience, 20% skill, 20% RTFM, 15% caffeine, and 5% attention to detail.
      When everything else fails, manipulate the data...
      Beschriftungen / Großformatdruck / Werbemittel

      Kommentar

      Lädt...
      X