Der Martin: Mit PHP auf localhost?

Beitrag lesen

Hallo Michael,

Ich versuche eine Art FileSharing mit PHP/Javascript zu machen ...

das ist unmöglich, weil

1. PHP serverseitig läuft und nur auf Dateien zugreifen kann, die auf ebendiesem Server liegen. Okay, PHP kann auch per HTTP, FTP oder anderen Protokollen auf fremde Rechner zugreifen, z.B. auch den des momentanen Besuchers der Seite. Das kann aber, wie Mathias schon richtig bemerkte, nur dann von Erfolg gekrönt sein, wenn auf dem Rechner des Besuchers ein dazu passender Server läuft und die Anfrage beantwortet.

2. Javascript clientseitig läuft und seinerseits keine Möglichkeit hat, überhaupt auf irgendwelche Dateien zuzugreifen. JS könnte zwar z.B. mit XMLHttpRequest() auf externe Ressourcen zugreifen, aber auch nur innerhalb derselben Domain. Vor allem könnte JS auf dem Client-Rechner keine Dateien auslesen bzw. speichern.

Für eine Filesharing-Anwendung ist es also unabdingbar, dass auf jedem Rechner, der an diesem Sharing teilnehmen will, eine darauf zugeschnittene Anwendung läuft. Diese muss sowohl auf das Dateisystem des Rechners, als auch auf das Internet zugreifen können. Als plattformübergreifende Lösung wäre da eventuell ein Java-Applet denkbar; wenn's plattformspezifisch sein darf, wäre eine native Applikation für das jeweilige Hostsystem (Win32, Linux, MacOS) wohl die bessere Lösung.

$fp = ("localhost");

Was soll das sein? Damit weist du der Variablen $fp den String "localhost" zu. Das hat aber nicht im geringsten etwas mit einer Datei- oder Netzwerkoperation zu tun, die du wahrscheinlich im Sinn hast.
Eventuell meintest du

$fp = opendir("http://localhost/");

Ich habe schon einiges versucht (127.0.0.1, file://, $_SERVER['REMOTE_ADDR'], etc.) aber ich kenne mich da nicht so aus.

Dann solltest du dich bei passender Gelegenheit mal mit den Basics von PHP beschäftigen, etwa einem Lehrbuch oder auch, wenn du schon ein bisschen damit zurechtkommst, das offizielle PHP-Manual. Die Grundlagen von Netzwerkprotokollen und deren Zusammenhängen sind für ein Projekt wie ein Filesharing-Netz auch unverzichtbar. Für ein Einstiegsprojekt ist das aber IMHO ein paar Nummern zu groß.

Deine bisherige Lernmethode mit Try&Error mag für eine gegebene Aufgabe auch irgendwann zum Ziel führen - aber es dauert in der Regel länger, und vor allem *verstehst* du die Lösung meistens nicht wirklich, wenn du sie nur "zufällig" gefunden hast.

So long,
 Martin

--
Gott hilft niemandem, er erfreut sich nur an unseren Leiden.
  (Ashura)