AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi PHP Formular ausfüllen
Thema durchsuchen
Ansicht
Themen-Optionen

PHP Formular ausfüllen

Ein Thema von marciboy · begonnen am 13. Dez 2004 · letzter Beitrag vom 19. Dez 2004
Antwort Antwort
Seite 1 von 2  1 2      
marciboy

Registriert seit: 13. Dez 2004
112 Beiträge
 
#1

PHP Formular ausfüllen

  Alt 13. Dez 2004, 22:04
Hallo

bin ein totaler Anfänger was Delphi angeht und suche schon seit Tagen nach einem für mich verständlichem Tutorial.

Ich habe ein in PHP geschriebenes Formular, was ich gern über Delphi ausfüllen möchte.
Außerdem möchte ich mich mit verschiedenen Usernamen und Passwörtern anmelden können.

Ich hoffe Ihr könnt mir helfen

Gruß
Marc
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#2

Re: PHP Formular ausfüllen

  Alt 13. Dez 2004, 22:07
Hallo marciboy,

erstmal herzlich willkommen hier
Um ein Formular auszufüllen kannst du z.B. die Post-Funktion von TIdHTTP verwenden (die HTTP-Komponente in der Indy-Komponentensammlung). Damit ist es eigentlich ein Kinderspiel das Formular auszufüllen. Das Ganze geschieht auch im Hintergrund, d.h. du kannst deine eigene Oberfläche anbieten. Such mal hier im Forum ein bisschen, es müsste einige Beispiele zum Thema geben.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
marciboy

Registriert seit: 13. Dez 2004
112 Beiträge
 
#3

Re: PHP Formular ausfüllen

  Alt 13. Dez 2004, 22:21
Hallo alcaeus,

erstmal danke für deine schnelle antwort.

Es soll ein Tool für mein Auktionshaus werden und bin für jeden kleinen Tip dankbar.

Gruß
Marc
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#4

Re: PHP Formular ausfüllen

  Alt 13. Dez 2004, 22:31
Hallo marciboy,

also, der folgende Code zeigt dir, wie du ein Formular mit TIdHTTP absenden kannst.
Die Komponente findest du auf der Palette "Indy Clients".

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  SL: TStringList;
begin
  SL := TStringList.Create;
  try
    SL.Add('mode=login');
    SL.Add('user='+Edit1.Text);
    SL.Add('pass='+Edit2.Text);
    IdHTTP1.Post('http://www.deineseite.de/login.php', SL);
  finally
    SL.Free;
  end;
end;
Zur Erklärung. Zuerst wird eine Stringliste erstellt, welche alle Parameter enthält. Die Parameter werden wie bei PHP mit name=wert eingetragen, und zwar als einzelne Zeile. Die Indy-Komponente kümmert sich dann darum:
Meine OH schreibt:
When ASource is a TStrings instance, Post will replace all occurrences of the End-Of-Line (EOL) character in ASource with the value '&' prior to transfer to the HTTP server.

Anschließend wird das Formular abgeschickt und du bist angemeldet. Natürlich wird das Ganze etwas komplexer, aber das Grundprinzip sollte verständlich sein.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
marciboy

Registriert seit: 13. Dez 2004
112 Beiträge
 
#5

Re: PHP Formular ausfüllen

  Alt 13. Dez 2004, 22:46
Hallo alcaeus

das heißt ich kopiere deinen code in den Button?
Und erstelle dann die 2 edits und die indy.

Ist das so richtig??

Gruß
Marc
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#6

Re: PHP Formular ausfüllen

  Alt 14. Dez 2004, 13:53
Zitat von marciboy:
das heißt ich kopiere deinen code in den Button?
Und erstelle dann die 2 edits und die indy.
Ja, so sollte es funktionieren. Beachte aber dass die Seite und die Parameter rein erfunden sind, du musst es evtl. mit einer deiner PHP-Seiten probieren.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
marciboy

Registriert seit: 13. Dez 2004
112 Beiträge
 
#7

Re: PHP Formular ausfüllen

  Alt 14. Dez 2004, 20:41
Hallo alcaeus

danke für deine hilfe. Wie weiß ich denn jetzt wo ich eingeloggt bin oder nicht?

gruß
MARC
  Mit Zitat antworten Zitat
endeffects

Registriert seit: 27. Jun 2004
450 Beiträge
 
#8

Re: PHP Formular ausfüllen

  Alt 17. Dez 2004, 13:43
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  SL: TStringList; Source: String;
begin
  SL := TStringList.Create;
  try
    SL.Add('mode=login');
    SL.Add('user='+Edit1.Text);
    SL.Add('pass='+Edit2.Text);
    Source:= IdHTTP1.Post('http://www.deineseite.de/login.php', SL);
  finally
    SL.Free;
  end;
  Memo.Lines.Add(Source);
end;
Da gibts verschiedenen Möglichkeiten, im obigen Beispiel
müßtest Du noch ein Memo Feld auf Deine Form packen und
diese dann unter Name von Memo1 auf Memo umbenennen.
Wenn der Request an den Webserver gesendet wird wird
die Antwort, der HTML Quelltext, dann im Memo ausgegeben.
Um zu kontrollieren das nun alles geklappt hat müßtest
Du diesen Quelltext dann nach segnifikanten Schlüsselwörtern
durchsuchen z.B. Sie sind jetzt angemeldet.
Die Funktion pos wird Dir da treue Dienste leisten.

Empfehlen würde ich Dir aber auf jeden Fall einen PacketSniffer
zu installieren damit Du alle Deine Schritte nachvollziehn kannst.
Wie arbeitet Dein Browser, was macht mein Programm.
Nahelegen würde ich Dir hier etherdetect (etherdetect.com),
etheral oder aber einen kompfortablen Proxy der Dir auch
SSL Packet im Klartext darstellt (Google > Charles+Proxy).
Wobei speziell der Proxy dann bei den Indy Proxy Einstellungen
angegeben werden muss. ProxyIP 127.0.0.1 und ProxyPort 8080
glaube ich waren das. Die Einstellungen findest Du auch
wenn Du Charles startest und dieser dann die Einstellungen
für den IE temporär umändert (Extras >Internetoptionen
> Verbindungen > Einstellungen)
Viel Spass und Freude wünsch ich Dir
  Mit Zitat antworten Zitat
marciboy

Registriert seit: 13. Dez 2004
112 Beiträge
 
#9

Re: PHP Formular ausfüllen

  Alt 17. Dez 2004, 15:37
Hallo

bei mir kommt im Memo folgendes raus:

SymRealOnLoad();
window.open = SymRealWinOpen;
SymRealOnUnload = window.onunload;
window.onunload = SymOnUnload;
}

SymRealOnLoad = window.onload;
window.onload = SymOnLoad;

//-->
</script>


Gruß
Marc
  Mit Zitat antworten Zitat
endeffects

Registriert seit: 27. Jun 2004
450 Beiträge
 
#10

Re: PHP Formular ausfüllen

  Alt 17. Dez 2004, 16:02
wie gesagt, installier dir einen packetsniffer,
dann siehst du wann wo was ankommt
kontrollier das mit deinem browser und deinem tool
und schon weißte wo es hängt
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 09:35 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