Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    16

    [Delphi] Form Html, invio dati.

    Salve a tutti, e grazie anticipatamente.

    io ho una pagina .asp (chiamiamola login.asp ) su web che richiede User e Password con una form e li invia ( a se stessa processandoli ) attraverso metodo POST.

    volevo sapere se era possibile creare una applicazione, che Aprisse chiaramente la pagina WEB di login e nello stesso tempo, inviasse User e Password, precedentemente digitati sulla form dell'applicativo, alla pagina ASP in modo che ne processi il login.

    in pratica un ShellExecute ma con passaggio di variabili tramite metodo POST, variabili che poi lo script ASP possa prendere in esame e processare come provenienti dal form html...

    e' possibile una cosa del genere? avete qualche idea? Grazie dell'attenzione

  2. #2
    Presumo che tramite ShellExecute il tuo problema può essere risolto.
    Es:
    codice:
    ShellExecute('http:\\www.mysite.com\login.asp?Pass=...&User =...')
    In questo modo verrà aperta la pagina ASP direttamente dal browser predefinito, passando la Password e loUser-name alla pagina interessata.

    Spero di aver risposto alla tua domanda...


  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    16
    Ti ringrazio per la risposta.

    il problema e' che i valori ( per una questione di sicurezza ) nn vengono passati attraverso " Barra degli Indirizzi " ma uso metodo POST, che non mostra nessun valore col tipico form - submit ...

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288
    Originariamente inviato da nargoz
    il problema e' che i valori ( per una questione di sicurezza ) nn vengono passati attraverso " Barra degli Indirizzi " ma uso metodo POST, che non mostra nessun valore col tipico form - submit ...
    Potresti richiamare la pagina utilizzando il componente TIdHTTP (componenti Indy), generando una richiesta al server e accodando i dati da spedire come POST.

    Spero che non ti serva per utilizzi fraudolenti...
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    16
    no no figurati e' per una mia pagina ti ringrazio provo a fare qualcosa anche se non conosco molto bene questo componente.

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    16
    ho provato a fare una cosa del genere, per inviare con " POST " dei dati alla pagina ASP :




    codice:
    procedure TForm1.Button1Click(Sender: TObject);
    
    var
      Params: TStringList;
      Url: string;
    
    
    begin
    
    Params := TStringList.create();
    Params.Add('username=ciccio');
    Params.Add('password=htmlit');
    
    http.HandleRedirects := True;
    
    Url := 'http://x.xxx.xx.xxx/login.asp';
    http.Post(Url, Params)     
    
    
    end;
    
    end.
    Schiaccio il bottone, non da errori, quindi penso che la connessione venga eseguita correttamente, il problema e' che nn vedo l'output.
    io vorrei che a sto punto si apra il browser con il login effettuato in pagina privata o il login rifiutato per user e pass sbagliati.
    non ho assolutamente idea di come cavarmela,Qualcuno sa come aiutarmi? Grazie anticipatamente .)

  7. #7
    Potresti sfruttare l'output generato dalla pagina ASP, per capire se l'utente é abilitato all'area riservata.

    Analizzando meglio il problema, potresti sviluppare una pagina ASP che restituisce come output un solo valore booleano : "1" per accesso all'area oppure "0" per accesso negato.

    Per quanto riguarda la parte in Delphi, devi utilizzare il metodo Get anziché l'attuale Post per ottenere il risultato della pagina asp, sottoforma di codice HTML.

    In codice:
    codice:
    procedure TForm1.Button1Click(Sender: TObject);
    
    var
      Params: TStringList;
      Url, myValue: string;
    begin
    
      Url := 'http://x.xxx.xx.xxx/login.asp?
    username=ciccio&'password=htmlit;
      myValue := http.Get(Url)
      if myValue = "1" then
        begin
          ... utente valido
        end
      else
        begin
          ... utente non valido
        end;   
    end;
    
    end.
    L'importante é che la pagina ASP restituisca come output un solo carattere e che corrisponda a 1 o a 0.


  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    16
    si potrebbe essere una idea, anche se l'idea era quella di sviluppare una utility di appoggio al login / servizio, per velocizzare il procedimento, o renderlo piu' " Attraente ".
    cioe', dovrebbe essere possibile fare il login anche da ASP e questo procedimento porterebbe a una ristrutturazione completa del login ...

    Se ci fosse un metodo diretto sarebbe molto bello :/

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.