Hi,
ich denke ein möglichst einfacher und sicherer Weg ist, wie schon diskutiert wurde, die Daten per IdHTTP an ein PHP Script zu schicken.
Um das PHP-Script einfach zu halten und da du (zunächst) mit einer manuellen Verarbeitung der Daten zufrieden bist, könnte man das PHP-Script eine E-Mail an dich versenden lassen. Dann könnte das Script so aussehen:
Code:
<?php
if(isset($_POST['daten'])){ //wenn die Post Daten da sind...
mail('meineAdresse@googlemail.com', 'Ein Betreff', $_POST['daten']); //... sende eine E-Mail an meineAdresse@googlemail.com mit dem Text $_POST['daten'] (das was zuvor im Delphi-Memo stand)
}else{
echo "Fehler. Daten nicht angekommen.";
}
?>
Und eine Delphifunktion zum Aufrufen des PHP Scriptes kann so aussehen (von hier:
http://www.delphipraxis.net/post421959.html)
Delphi-Quellcode:
function sendeDatenAnServer(datenString:
string):
string;
//Rückgabewert ist die Ausgabe des PHP-Scriptes
var
Strings: TStringList;
//Zusammengesetze Post-Daten
Stream: TStringStream;
//Ausgabe der Aufgerufenen Seite
begin
Result := '
';
Stream := TStringStream.Create('
');
//Rückgabe-Stream erstellen
Strings := TStringList.Create;
//Post-Daten-StringList erstellen
try
Strings.Add('
daten=' + datenString);
//Memo1.Text (= datenString) soll im PHP-Script über $_POST['daten'] erreichbar sein
try
idHTTP.Post("http:
//www.meineseite.de/meinscript.php", Strings, Stream);//Datei abrufen
Result := Stream.DataString;
//dem Ausgabe-String die zurückgegebenen Daten zuweisen (alles was im PHP Script z.B. mit echo "..."; ausgegeben wurde)
except //Fehlerbehandlung
on E:
Exception do
ShowMessage('
Error encountered during POST: ' + E.
Message);
end;
finally
Strings.Free;
Stream.Free;
end;
end;
Und der Aufruf:
sendeDatenAnServer(Memo1.Text);
Alles Ungetestet