AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Suche Beispiel zur Zusammenarbeit von php und Applikation
Thema durchsuchen
Ansicht
Themen-Optionen

Suche Beispiel zur Zusammenarbeit von php und Applikation

Ein Thema von torud · begonnen am 30. Sep 2005 · letzter Beitrag vom 1. Okt 2005
Antwort Antwort
Seite 3 von 4     123 4      
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#21

Re: Suche Beispiel zur Zusammenarbeit von php und Applikatio

  Alt 30. Sep 2005, 20:52
mit post muss es so aussehen
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
   Response:String;
   LParams: TStringlist;
begin
  LParams := TStringlist.Create;
  LParams.Add('parameter=wert');
  LParams.Add('param2=wert2');
  Response := IdHTTP1.Pos('http://www.thru-soft.de/test.php', LParams);
  mem_feedback.Lines.Add(Response);
  LParams.Free;
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
teebee

Registriert seit: 17. Jan 2003
Ort: Köln
460 Beiträge
 
Delphi 6 Professional
 
#22

Re: Suche Beispiel zur Zusammenarbeit von php und Applikatio

  Alt 30. Sep 2005, 20:56
Ich sag nur: Resourcenschutzblock!
  Mit Zitat antworten Zitat
Eichhoernchen

Registriert seit: 22. Apr 2004
Ort: Hagen
322 Beiträge
 
Turbo Delphi für Win32
 
#23

Re: Suche Beispiel zur Zusammenarbeit von php und Applikatio

  Alt 30. Sep 2005, 23:02
warum so kompliziert, es geht hier doch nur um bestimmte Werte.


Code:
<?php

if( (isset($_POST['param1'])) && (isset($_POST['param2'])) ) {
  echo "Alles angekommen!";
}else echo "Fehlerhaft";

?>
Und dann in Delphi so wie es zuvor für Post beschrieben war!

Delphi-Quellcode:
var
   Response:String;
   LParams: TStringlist;
begin
  LParams := TStringlist.Create;
  LParams.Add('param1=wert');
  LParams.Add('param2=wert2');
  Response := IdHTTP1.Post('http://www.mein-server.de/script.php', LParams);
  if response = 'Alles angekommen!'
    then //hier für angekommen
    else if response = 'Fehlerhaft'
            then //Variablen nicht übertragen
            else //Seite nicht erreicht
end;
Jan
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#24

Re: Suche Beispiel zur Zusammenarbeit von php und Applikatio

  Alt 1. Okt 2005, 08:54
Also ich würde es ja gern so machen wie von Euch allen beschrieben, aber ich bekomme immer noch bei  Response := IdHTTP1.Post('http://www.mein-server.de/script.php', LParams); die Fehlermeldung:

Es gibt keine überladene Version von 'Post', die man mit diesen Argumenten aufrufen kann.

Bei Euch scheint das kein Problem zu sein. Warum nur???
Es ist dabei egal, ob ich davor die Response-Variable setze oder nicht. Liegt es an meiner Version der Indy oder was mache ich falsch?
Danke
Tom
  Mit Zitat antworten Zitat
teebee

Registriert seit: 17. Jan 2003
Ort: Köln
460 Beiträge
 
Delphi 6 Professional
 
#25

Re: Suche Beispiel zur Zusammenarbeit von php und Applikatio

  Alt 1. Okt 2005, 09:21
Kann ich mir nicht erklären, zeig mal Deine komplette Funktion.
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#26

Re: Suche Beispiel zur Zusammenarbeit von php und Applikatio

  Alt 1. Okt 2005, 09:34
Habe den scheinbaren Fehler gefunden:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
   Response:String;
   Stream:TStringStream;
   LParams: TStringlist;
begin
  Stream:=TStringStream.Create('');//Rückgabe-Stream erstellen
  LParams := TStringlist.Create;
  LParams.Add('param1=wert');
  LParams.Add('param2=wert2');
  LParams.Add('param3=wert3');
  LParams.Add('param4=wert4');
  IdHTTP1.Post('http://www.thru-soft.de/test.php', LParams, Stream);
  Response:=Stream.DataString;
  Showmessage(Response);
  mem_feedback.Lines.Add(Response);
  LParams.Free;
  Stream.Free;
end;
Und der php-Code:
<?php
foreach ($_POST as $key => $value)
{
echo("$key.": ".stripslashes($value)."\n\n");
}
?>

Ergebnis? Keins!
Ich erhalte nur einen Leerestring zurück und sonst nix.
Dabei ist es doch gemaess php-Code so, dass ich eigentlich den Parameternamen und den Wert wiederbekommen sollte. Also nun ist zwar vom Code her alles ok, aber es funzt einfach nicht.

Warum nur?

Muss ich vielleicht noch irgendwas in der idhttp-Kompo einstellen?
Demnaechst sende ich vielleicht das ganze Projekt!?
Angehängte Dateien
Dateityp: zip php_applikation_537.zip (6,3 KB, 7x aufgerufen)
Danke
Tom
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#27

Re: Suche Beispiel zur Zusammenarbeit von php und Applikatio

  Alt 1. Okt 2005, 11:09
Das verrückte ist, dass ich das Script mittels einem HTML-Formular ansprechen kann und genau das erhalte, was ich übergebe, wenn ich mir ein Echo ausgeben lasse, aber wenn ich es mit der idHttp-Komponente versuche, bekomme ich immer einen Leerstring zurück, bzw. einen Vorgabestring, den ich nun im php-Script eingebaut habe, aber keine übergebenen Parameter.

<?php
$https = $HTTP_POST_VARS;
$text="Sie haben einem Script Informationen übermittelt!\n
__________________________________________________ ______
\n";

foreach ($https as $key => $value)
{
$text = $text."".$key." : ".stripslashes($value)."\n\n";
}
echo($text);
?>

Hat als Ergebnis im Programm:
"Sie haben einem Script Informationen übermittelt!"
"_________________________________________________ _______"

Das ist alles. Der Rest fehlt leider!

Es kann eigentlich auch nicht am php-Space liegen, da es zum einen von einem HTML-Formular aus funktioniert und zum anderen ich es auch noch auf anderem Space probiert habe, mit gleichem Misserfolg.
Danke
Tom
  Mit Zitat antworten Zitat
Eichhoernchen

Registriert seit: 22. Apr 2004
Ort: Hagen
322 Beiträge
 
Turbo Delphi für Win32
 
#28

Re: Suche Beispiel zur Zusammenarbeit von php und Applikatio

  Alt 1. Okt 2005, 12:05
welche Indy version nutzt du denn, denn bei mir funktioniert es!


EDIT: hab jetzt mal nen PRogramm geschrieben was auf deine Seite Postet, und es klappt, ich hab den Quellcode angehängst!
Angehängte Dateien
Dateityp: zip phpdelphi_196.zip (265,2 KB, 12x aufgerufen)
Jan
  Mit Zitat antworten Zitat
Benutzerbild von mh166
mh166

Registriert seit: 14. Nov 2004
Ort: Chemnitz
443 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#29

Re: Suche Beispiel zur Zusammenarbeit von php und Applikatio

  Alt 1. Okt 2005, 15:09
Um mal kurz in die Session reinzuplatzen:

GruppeCN hat auf seiner Webseite ein solches experiment durchgeführt:
Kommunikation mit externer Software - 1. PHP Server
Kommunikation mit externer Software - 2. Flash Client
Kommunikation mit externer Software - 3. Delphi Client

mfg, mh166
Tiefgründige Sätze unserer Zeit:
Zitat von Luckie:
Und diesen Token zur Laufzeit zu modifizieren würde bedeuten, dass du zur laufzeit das Token ändern musst.
  Mit Zitat antworten Zitat
noch_ein_hannes

Registriert seit: 18. Sep 2003
130 Beiträge
 
#30

Re: Suche Beispiel zur Zusammenarbeit von php und Applikatio

  Alt 1. Okt 2005, 16:18
Hi,

schau mal in der PHP-Doku unter "error_log()". Damit kannst Du prima prüfen was Dein PHP so alles macht, indem Du einfach die gewünschten Ausgaben in eine Log-Datei schreibst, bzw. sie Dir als Mail senden lässt.

Ich mache das z.B. gern so:

Delphi-Quellcode:
function trace($strMessage, $clear=false) {
   $strLogFile = '/absoluter/pfad/zu/deiner/log/datei/trace_log.txt';
   if(!empty($clear)) unlink($strLogFile);

   $strMessage = '['.(date('H:i:s')).'] '.$strMessage;
   error_log($strMessage."\n", 3, $strLogFile);
   }
Einen Log-Eintrag erstellst Du dann mit:
trace('Variable: $test='.$test);

bzw. wenn Du am Anfang des Scriptes alles zurücksetzen möchtest:
trace('Start', true);

grüsse,
Hannes
- everything is possible -
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz