• User

    Aiuto: problema per comunicare nome e passwd dopo il pagamento

    Salve,
    premetto che non sono un esperto nel creare siti web, ma da poco, grazie a vari corsi gratuiti sul web, e vari tutorial, sono riuscito a creare un piccolo sito in asp,
    ora ho 2 problemi che non riesco a fronteggiare, spero che qualcuno di voi riesca a aiutarmi....
    Il primo problema, riguarda la protezione di una pagina del mio sito, che sono riuuscito a proteggere con username e password...
    Però il problema, è che se google dovesse indicizzare tutte le pagine del mio sito, ho notato che accedendo direttamente dal browser non viene richiesta alcuna autenticazione, e gli chiunque riesce a leggere il contenuto della mia pagina nascosta...

    Es: miosito.it/login.asp chiede nome utente e passwd,
    se sono corrette, si apre miosito.it/paginaprotetta

    Però.. se dal browser inserisce direttamente miosito.it/paginaprotetta
    la pagina si apre lo stesso senza richiedere nulla...
    questo è il codice del login in asp che ho inserito nel sito:
    <html>
    <head>
    <title><b><#FFFFFF> Pagina di accesso </#FFFFFF></b></title>
    <%
    Username="prova"
    Password="provaforumgt"
    Validated = "OK"
    if Strcomp(Request.Form("User"),Username,1)=0 AND Request.Form("password") = Password then
    'Set the validation cookie and redirect the user to the original page.
    Response.Cookies("ValidUser") = Validated
    'Check where the users are coming from within the application.
    If (Request.QueryString("from")<>"") then
    Response.Redirect Request.QueryString("from")
    else
    'If the first page that the user accessed is the Logon page,
    'direct them to the default page.
    Response.Redirect "pagina segreta.asp"
    End if
    Else
    ' Only present the failure message if the user typed in something.
    If Request.Form("User") <> "" then
    Response.Write "<h3>Accesso negato.</h3>" & "<br>" & _
    "Nome Utente e Password errate.<br> <br>"
    End if
    End if
    %>
    sono sicuro che è un metodo molto semplice, e poco sicuro, solo che ho provato altri metodi, come destroy.asp - check.asp pasx.txt, però non sono riuscito a farlo funzionare...

    Ora il secondo problema, legato al primo, è il seguente:
    vorrei vendere un prodotto sul mio sito,
    miosito.it/acquista.asp
    l'utente paga con paypal, e viene reindirizzato a: miosito.it/login.asp
    il problema e che non so come comunicare username e password all'utente...
    ho provato a modificare il pulsante di paypal cercando di inserire un messaggio al cliente con i dati...solo che non si può fare...
    l'unica cosa che ho pensato, sarebbe mandare una mail automatica dopo aver ricevuto a mia volta quella di paypal di avvenuto pagamento, con i dati di accesso al sito...
    Ma come diamine si fa'???
    Spero che ci sia qualche santo che mi possa aiutare...
    Garzie e scusate se ho detto cose insensate... solo che è il mio primo sito web...


  • Super User

    Allora, per il primo problema devi fare un controllo sul cookie anche sulla pagina protetta, quindi se non esiste o non è valido fai il redirect al login. Per il secondo problema, per mandare automaticamente la mail dovresti leggere la mail tramite asp, ma non so se si possa fare...


  • User

    Grazie per la risposta... e sul codice che ho inserito prima, quale sarebbe il pezzo di codice da aggiungere per fare il controllo sul cookie?
    grazie mille


  • Super User

    Quella è la pagina di login, tu devi controllarlo nella pagina "segreta"


  • User

    ok....
    e non potresti postarmi il codice??... so che è tanto.... oppure se esiste un link dove vedre un esempio...
    grazie


  • Super User

    Io non ho mai usato asp, comunque nel codice postato da te hai:

    Response.Cookies("ValidUser")

    Immagino che ci sarà anche Request.Cookies("ValidUser"), quando apri la pagina segreta, leggi questo valore, se è presente ed è ok bene, altrimenti fai il redirect verso la pagina di login.


  • User

    ciao,
    secondo me è meglio se proteggi la pagina con le sessioni asp.

    per fare ciò aggiungi al sito come prima riga:

    <% if Session("Verifica")<>"ok" then
    Response.Redirect("login.asp")
    else
    %>

    <html>
    <head>
    </head>
    <body>

    ........

    </body>
    </html>
    <% end if %>

    poi la pagina che contiene il form (login.asp ?) gli fai fare al form il controllo da una pagina che si chiamerà verifica che verificherà i dati e se corretti farà cosi:

    if dati corretti then
    Session("Verifica")="ok"
    Response.Redirect("paginaprotetta.asp")
    else
    Response.Redirect("login.asp")
    end if

    spero di esserti stato di aiuto.
    se hai altre domande chiedi pure 😉

    ciao