Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   am Webserver (PHP) anmelden (https://www.delphipraxis.net/198983-am-webserver-php-anmelden.html)

strom 16. Dez 2018 21:18

AW: am Webserver (PHP) anmelden
 
Liste der Anhänge anzeigen (Anzahl: 1)
Fehlermeldung

HTTP/1.1 302 Moved Temporaily. :roll:

strom 16. Dez 2018 21:25

AW: am Webserver (PHP) anmelden
 
Liste der Anhänge anzeigen (Anzahl: 1)
jetzt geht es! Danke :-)

DP-Maintenance 16. Dez 2018 21:39

Dieses Thema wurde am "16. Dec 2018, 22:39 Uhr" von "Luckie" aus dem Forum "Programmieren allgemein" in das Forum "Netzwerke" verschoben.

strom 16. Dez 2018 21:41

AW: am Webserver (PHP) anmelden
 
hallo, habe doch noch ein problem :-) wie fange ich die request Ok 200 ab?

Delphi-Quellcode:

procedure TForm1.Button1Click(Sender: TObject);
var
  params: TStringList;
  url: string;
begin
  url:='http://192.168.0.85/index.php?action=login';
  params := TStringList.Create;
  try
    params.Add('btn-login=btn-login');
    params.Add('email='+ Edit1.Text);
    params.Add('password='+ Edit2.Text);

    idHTTP1.Post(url, params);

except
  on E: EIdHTTPProtocolException do
    if (idhttp1.ResponseCode = 200) then
      Showmessage('Test');
    else
     Showmessage('Fehler');

    params.free;
  end;
end;

DieDolly 16. Dez 2018 21:51

AW: am Webserver (PHP) anmelden
 
Das HTTP Objekt hat eine Property dafür. Kleiner Tipp: Integer.

strom 16. Dez 2018 22:09

AW: am Webserver (PHP) anmelden
 
ok,

wieso wird immer der code 200 zurückgegeben? auch wenn die logindaten falsch sind?

Delphi-Quellcode:

var
  params: TStringList;
  url: string;
  code: integer;
begin
  url:='http://192.168.0.39/index.php?action=login';
  params := TStringList.Create;
  try
    params.Add('btn-login=btn-login');
    params.Add('email='+ Edit1.Text);
    params.Add('password='+ Edit2.Text);

    idHTTP1.Post(url, params);



    finally

     code := idhttp1.ResponseCode;
    ShowMessage(IntToStr(code));
    params.free;

Schokohase 16. Dez 2018 22:14

AW: am Webserver (PHP) anmelden
 
Das musst du den Programmierer des Webservers fragen.

DieDolly 16. Dez 2018 22:23

AW: am Webserver (PHP) anmelden
 
Zitat:

wieso wird immer der code 200 zurückgegeben? auch wenn die logindaten falsch sind?
Weil der ResponseCode nichts damit zu tun hat, ob der Login scheitert oder nicht.

Du solltest am besten mal den Wikipediaartikel zu http codes lesen.^

Ich würde es ganz anders machen.
Ich würde eine php-Datei auf dem Server anlegen die einzig dafür da ist von deinem Programm angesprochen zu werden.
Der übergibst du per POST Name und Password. Das Password am besten direkt schon gehasht so wie es auch in der Datenbank gehast ist.
Dann prüfst du in der PHP-Datei, ob ein solcher Nutzer vorhanden ist und wenn ja, ob das Passwort stimmt. Wenn eins von beiden nicht zutrifft, ist die Verarbeitung beendet und du könntest mit echo irgendwas zurückgeben was du in deinem Programm auswertest. Ansonsten loggst du den Nutzer ein und kannst auch da irgendwas echo'n, damit dein Programm weiß was los ist.

Eine direkte Verbindung zur Datenbank wäre natürlich am besten. Aber egal wie du es machst, es ist nicht sicher.

Codehunter 16. Dez 2018 22:34

AW: am Webserver (PHP) anmelden
 
Die meisten Webdienste geben bei einem formularbasierten Login den Code 200 zurück und trompeten den Login-Fehler lediglich über HTML heraus. Früher war das mal verpönt, heute aber Usus wegen der Spambots.

strom 17. Dez 2018 12:14

AW: am Webserver (PHP) anmelden
 
Könnte ich was an die idHTTP Komponente schicken?

Habt Ihr ein Beispiel für mich?

Code:

 if (password_verify($password, $row['password']) && $count==1) { 
                         $_SESSION['userSession'] = $row['user_id'];      
                         header("Location: home.php");
                               
                                  ??????????????????????????????????


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:19 Uhr.
Seite 2 von 3     12 3      

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