Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Dateien im I-Net ändern (https://www.delphipraxis.net/144068-dateien-im-i-net-aendern.html)

Delphi-Narr 29. Nov 2009 11:30


Dateien im I-Net ändern
 
Hallo nochmal,
also ich bin dabei mir eine Art Chat zu basteln.
Ich hab nur selbst keinen eigenen Server.
Deshalb möchte ich eine Datei auf einen kostenlosen Server laden (entweder via FTP oder direkt) und vom Programm aus
ändern können.

Also meinetwegen die Datei chat.txt
und wenn man auf Absenden klickt soll die Chat.txt neu hochgeladen werden/verändert werden.
Da das kein Massenchat ist, ignorieren wir die Gefahr des gleichzeitigen Uploads mal...

Ist das irgendwie möglich?

Liebe Grüße!

patti 29. Nov 2009 11:46

Re: Dateien im I-Net ändern
 
Die einzige Lösung in der Richtung, die mir da einfallen würde, wäre, die Datei herunterzuladen, zu verändern und anschließend wieder hochzuladen. Das ganze würde per FTP (Stichwort Indy-Komponenten) funktionieren, vorausgesetzt der Server bietet die Möglichkeit, Dateien per FTP hochzuladen. Außerdem ist das nicht gerade eine saubere Lösung. Eigentlich müsstest du mit einer Datenbank etc. arbeiten.

Edit: Ein weiteres Problem, das du auf gar keinen Fall vernachlässigen darfst, ist, dass du die FTP-Zugangsdaten irgendwie hinterlegen musst, um einen Upload zu machen. Das ist absolut unsicher und in den falschen Händen "gefährlich" !!!

himitsu 29. Nov 2009 11:47

Re: Dateien im I-Net ändern
 
Erstell dir ein PHP-Script auf dem WebSpace.

Dieses Script bekommt dann via GET/POST die Nachrichten/Steuerkommandos und über bestimmte GET-Parameter kannst du dann verschiedene Info (wie z.B. Nachrichten/Userliste) abfragen.

Das Script verwaltet dann die Daten auf dem Server (in Dateien oder einer Datenbank).

Meflin 29. Nov 2009 11:50

Re: Dateien im I-Net ändern
 
Du weißt aber schon, dass du für einen Chat auch einfach die Clients als Server benutzen könntest?

patti 29. Nov 2009 11:50

Re: Dateien im I-Net ändern
 
@himitsu: Die Frage ist aber, ob kostenlose Server PHP-Scripts unterstützen/erlauben...

@Meflin: Dann bräuchte man aber die IP-Adresse des/der Server oder zumindest irgendeine Information "wo" die Server sind.

Meflin 29. Nov 2009 11:53

Re: Dateien im I-Net ändern
 
Zitat:

Zitat von patti
@himitsu: Die Frage ist aber, ob kostenlose Server PHP-Scripts unterstützen/erlauben...
@Meflin: Dann bräuchte man aber die IP-Adresse des/der Server oder zumindest irgendeine Information "wo" die Server sind.

Da gibt es schon ein paar Hoster die das erlauben. Und zum zweiten Einwand: ja und :gruebel:

himitsu 29. Nov 2009 11:54

Re: Dateien im I-Net ändern
 
Es gibt viele kostenloser Webspaces, wo sowas erlaubt ist, aber dort würde ich dann die Nachrichten direkt zwischen den Clients austauschen, um den Trafic im Server nicht zu hoch zu treiben, wogegen der Anbieter bestimmt was hätte.

[edit]
Zitat:

@Meflin: Dann bräuchte man aber die IP-Adresse des/der Server oder zumindest irgendeine Information "wo" die Server sind.
siehe mein "letzter" Vorschlag: die IPs weiß der Server und die Clients fragen diese, da die Clients sich dort erstmal anmelden.

Delphi-Narr 29. Nov 2009 11:57

Re: Dateien im I-Net ändern
 
Also PHP ist kein Problem...
Also ich sag dann praktisch in Delphi (hab da ein Memofeld zum eingeben) "http://www.webspace.de/chat.php?$text=memo1.text"
oder wie?

Und wie kann dann der andere darauf zugreifen?
Also via Timer im Sekunden Intervall meinetwegen
Memo2.text:= ???

So sprachenübergreifend bin ich komplett unerfahren.

@melfin
Ich bräuchte dann aber doch ein Programm, dass immer läuft, oder wäre dann jeder Nutzer praktisch selbst der Server?

@himitsu
Wie arbeite ich denn mit den Clients?

patti 29. Nov 2009 12:05

Re: Dateien im I-Net ändern
 
Eine einfache Möglichkeit wäre folgendes (hat himitsu glaube ich in #7 auch etwa gemeint):
Du verwaltest die IP-Adressen von den angemeldeten Servern in einer Datenbank. Die Server laufen als Programme auf dem Computer der Benutzer und tragen sich mit samt der IP-Adresse in die Datenbank ein. Die Clients (ebenfalls Programme auf den Computern) fragen die Server-Liste einmalig von der Datenbank im Internet ab und verbinden sich mit einem der laufenden Server über die bekannte IP-Adresse. Anschließend wird von den Client- zu den Server-Programmen ohne Umwege über ein PHP-Script "kommuniziert".

Edit: Im Übrigen gibt es (auch hier in der DP) schon einige Threads zu diesem Thema. Einfach mal suchen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:35 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz