AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Indy HTTP POST...

Ein Thema von Zerolith · begonnen am 12. Jun 2003 · letzter Beitrag vom 16. Jun 2003
Antwort Antwort
Zerolith

Registriert seit: 12. Mär 2003
Ort: Kempten
188 Beiträge
 
Delphi 6 Enterprise
 
#1

Indy HTTP POST...

  Alt 12. Jun 2003, 13:27
Hallo!

ich hab eine PHP Datei die einen String über Post annimmt - und mit ihm dann eine Datenbank abfrage macht. (DELETE ODER INSERT)

naja - hab das ganze bis vor kurzem mit GET gemacht - hat prima funktioniert.

Allerdingsversteh ich die POST Funktion nicht ganz vom INDY HTTP

komm nicht mal mit dem Response STring zurecht. kann mir jemand ein kleines Beispiel geben (?)

(mein code Bisher)
Delphi-Quellcode:
   
var tsql : TStringList;
    sql : wideString;
  // stream : TSTream;
...
   sql := stringreplace(sql, ' ', '%20', [rfReplaceAll, rfIgnoreCase]);
   tsql := TStringlist.Create;
   stream := TStream.Create;
   tsql.Clear;
   tsql.text := sql;
   http.Post('http://webserver/getfile.php', tsql, nil);
// http.Post('http://webserver/getfile.php', tsql, Stream); || ABSTRACT ERROR!
   tsql.Free;
   stream.free;

Das ganze ist in ner Schleife in der der SQL String zusammengesetzt wird. Der Syntax des SQL Strings ist auch korrekt.

liegt wohl am Post....

ach ja hier noch die PHP File:
Code:
<?php
include("../../config/dbase_conf.inc.php");
include("../../classes/dbase_class.inc.php");

$db = new db_com;
$db->dbConnect();

echo $_POST["sql"]."
";
$sql = stripslashes($_POST["sql"]);
echo $sql;
echo mysql_query($sql);

?>
Meine Fragen:

1. kann mir jemand helfen den REsponse STring zu bekommen - und mir helfen den Post Erfolgreich abzuschließen?

thx
Daniel
  Mit Zitat antworten Zitat
Zerolith

Registriert seit: 12. Mär 2003
Ort: Kempten
188 Beiträge
 
Delphi 6 Enterprise
 
#2
  Alt 13. Jun 2003, 10:10
kann mir niemand helfen?
Daniel
  Mit Zitat antworten Zitat
Zerolith

Registriert seit: 12. Mär 2003
Ort: Kempten
188 Beiträge
 
Delphi 6 Enterprise
 
#3
  Alt 16. Jun 2003, 10:46
ok - ich versuch jetzt grad anders aber so funktionierts aus net ganz - kann mir hier evtl jemand helfen?

http ist ein TClientSocket

Delphi-Quellcode:
 http.host := 'webserver';
  http.Port := 80;
  http.active := TRUE;
  if http.Active = TRUE then
   begin
    http.Socket.SendText('POST /getfile.php HTTP/1.1'
    +' Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/msword, application/x-shockwave-flash,'
    +' */* Referer: [url]http://127.0.0.1[/url] Accept-Language: de Content-Type: application/x-www-form-urlencoded'
    +' Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)'
    +' Host: webserver Content-Length: 118 Connection: Keep-Alive Cache-Control: no-cache'
    +' sql=blabla'+#13#10+#13#10);
    memo2.lines.Add('SENT!');
   end
  else
     http.Active := FALSE;
  http.Active := FALSE;
Daniel
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Indy HTTP POST...

  Alt 16. Jun 2003, 11:23
Hi,

irgendwie hatte ich Dich übersehen.

Ich erlaube mir mal, auf Deinen ersten Beitrag zurückzukommen:
Code:
var
  tsql : TStringList;
  sql : wideString;
  [color=#ff0000]stream : TStringStream;[/color]
...
   sql := stringreplace(sql, ' ', '%20', [rfReplaceAll, rfIgnoreCase]);
   tsql := TStringlist.Create;
   [color=#f60000]Stream := TStringStream.Create;[/color]
   tsql.Clear;
   tsql.text := sql;
   http.Post('http://webserver/getfile.php', tsql, nil);
   http.Post('http://webserver/getfile.php', tsql, Stream);
   tsql.Free;
   stream.free;

[color=#f60000]// das ergebnis ist jetzt in [b]Stream.DataString[/b][/color]
......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Zerolith

Registriert seit: 12. Mär 2003
Ort: Kempten
188 Beiträge
 
Delphi 6 Enterprise
 
#5
  Alt 16. Jun 2003, 11:27
Bringt mir leider nicht mehr viel fürs aktuelle Projekt - aber für die Zukunft - fettes thx an sakura!

aber mit dem ClientSocket kannst mir nit helfen? Mein Cheffe meint i soll des doch nit mit Indy machen sonder mit den Socket Teilen... und irgendwie mag des nit - und er is bis Fr. net da
Daniel
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#6
  Alt 16. Jun 2003, 11:32
Zitat von Zerolith:
Mein Cheffe meint i soll des doch nit mit Indy machen sonder mit den Socket Teilen... und irgendwie mag des nit - und er is bis Fr. net da
Leider nicht, ich arbeite mit denen nicht, da ich mich an dieser Stelle an Borlands Richtlinie halte, die Indy-Komponenten zu nutzen. Diese sind, lt. Borland, besser geeignet und Borland wird auch keine Anstrengungen in die Weiterentwicklung der eigenen Komponenten investieren.

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Antwort Antwort


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 15:01 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