Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    79

    domandina sul querystring

    ciao a tutti!

    ho una pagina che visualizza i dati di un prodotto, questa pagina prende l'id del prodotto tramite querystring ed effettua una ricerca sul database x prendere tutti gli altri dati e visualizzarli.

    es.

    scheda.asp?id=21

    il mio prob è ke se un utente cambia il 21 con il 20 ad esempio, riesce a vedere la scheda di un altro prodotto che non voglio fargli vedere.

    ho visto che ci sono dei siti in cui anche se l'utente cambia i dati del querystring, la pagina non cambia.

    qualcuno sa dirmi come è possibile fare questa cosa?

    grazie!
    ...::: by tonyno :::...

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Invece di usare una querystring puoi usare un form inviando i dati via POST oppure una variabile di sessione anche se mi sembra un po' dispendioso.

    Roby

  3. #3
    Ciao,

    hai fatto una domanda interessante, in quanto non mi ero mai posto questo problema.
    L'unica cosa che mi viene in mente per ovviare a questo inconveniente è che potresti testare all'inizio della pagina scheda.asp da che pagina proviene l'utente, e se la pagina è scheda.asp non eseguire il codice con la visualizzazione della pagina.
    Oppure potresti utilizzare un campo nascosto, dove inserisci il valore dell'id. All'inizio della pagina scheda.asp testi se questo campo nascosto ha un valore (request.form) o meno. Quando l'utente visualizza la scheda per la prima volta non esiste questo campo e il vaolre associato, quindi visualizzi la scheda correttamente. Se fa il furbo e modifica la querystring esisterà il campo e il valore, e in questo caso ricarichi la pagina prendendo come indice quello del valore del campo nascosto.
    Non so se sono stato chiaro, e se questo stratagemma (puramente logico in quanto da me mai provato) possa funzionare.
    Sono comunque curioso di sapere se qualcuno ha utilizzato un altro sistema.
    Ciao.
    Carlo Patti
    www.ilmagodeipc.it

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    79
    grazie ad entrambi x le risposte!

    x quanto riguarda la session ci avevo pensato anche io ma non posso utilizzarla nella mia struttura xkè ho il session.timeout=1 x altri motivi.

    mandare i dati via form nn mi è possibile perchè necessito in questo caso di una querystring.

    le altre due opzioni mi sembrano possibili, ora provo e poi ti dico come è andata a finire

    GRAZIE MILLE!
    ...::: by tonyno :::...

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Non hai molte alternative.
    Per non rendere modificabile il parametro via querystring, da qualche parte devi memorizzare il valore corretto...

    Roby

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    79
    auty correggimi se sbaglio ma nn mi sembra possibile questo procediemnto:

    Oppure potresti utilizzare un campo nascosto, dove inserisci il valore dell'id. All'inizio della pagina scheda.asp testi se questo campo nascosto ha un valore (request.form) o meno. Quando l'utente visualizza la scheda per la prima volta non esiste questo campo e il vaolre associato, quindi visualizzi la scheda correttamente. Se fa il furbo e modifica la querystring esisterà il campo e il valore, e in questo caso ricarichi la pagina prendendo come indice quello del valore del campo nascosto.

    quando visita x la prima volta la pag controllo che il campo nascosto sia vuoto giusto? e fin qui tutto bene...
    il problema è ke per figurare pieno al request.form il form in cui è contenuto deve essere spedito, invece se l'utente cambia il numero della querystring e ricarica la pagina non invia il form quindi il controllo non funzionerà.

    giusto?
    ...::: by tonyno :::...

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    79
    x Roby

    è quello il prob!

    secondo me c'è qualke modo x mascherare il valore. io avevo pensato di passarlo in modo criptato ma nn so se sia possibile...
    ...::: by tonyno :::...

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Per aprire la pagina deve venire dal form.
    Per controllare ciò ti basta scrivere:

    codice:
    if request.servervariables("request_method") = "POST" then
    'Viene dal form
    else
    'Non viene e probabilmente ha pasticciato con la querystring
    end if
    Roby

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    79
    così funzia! grazie!
    ...::: by tonyno :::...

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    79
    problema:

    il server vede solo la variabile in querystring quindi figura sempre che non arriva dal form
    ...::: by tonyno :::...

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 © 2026 vBulletin Solutions, Inc. All rights reserved.