Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    sicurezza: impedire accesso a pagina di esecuzione form

    Ciao a tutti,

    avendo una pagina "pagina1.htm" con un form con action="eseguiPHP.php"...

    ...potrebbe aver senso impedire che qualcuno richiami direttamente la pagina PHP da browser?

    Es: se qualcuno digita "www.miosito.com/eseguiPHP.php" la pagina non deve fare nulla (oppure reindirizza alla home...).


    Voi usate dei controlli di questo genere?

    Se sì, come fate?


    ipotesi: nella pagina PHP verificare che la pagina di provenienza sia "pagina1.htm"?


    Grazie
    Ciao
    1,2,3,4,5,10,100 passi!

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    può aver senso sì in alcuni casi... per il controllo si può (anche più opzioni insieme):

    - controllare il referer ($_SERVER['HTTP_REFERER']) ossia la pagina "chiamante"
    - usare le sessioni e/o i cookies impostando qualche parametro nella pagina chiamante
    - altro

  3. #3
    Mah la domanda è molto generica perché la risposta dipende sopratutto da cosa fa eseguiPHP.php...

    In generale possiamo dire che quello che si fa normalmete è controllare che i parametri passati a "eseguiPHP.php" siano del tipo attesso e che i valori siano nel range atteso, poi da dove si arriva sulla pagina poco importa

  4. #4
    Una cosa veloce potrebbe essere quella di controllare, nella pagina PHP, che sia valorizzato nell'array $_POST il campo corrispondente al submit il che ti conferma l'avvenuta pressione di tale pulsante nella pagina HTML di partenza.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    si può anche creare un file di intestazione che mette in una variabile di sessione la pagina attiva... quella che deve fare il controllo verifica PRIMA di effettuare tale azione il valore per sapere la precedente quale sia

  6. #6
    Originariamente inviato da eiyen
    si può anche creare un file di intestazione che mette in una variabile di sessione la pagina attiva... quella che deve fare il controllo verifica PRIMA di effettuare tale azione il valore per sapere la precedente quale sia
    Un'altra soluzione potrebbe essere quella di utilizzare la variabile globale $_SERVER con l'attributo HTTP_REFERER che restituisce direttamente la pagina di provenienza:

    Codice PHP:
    $_SERVER['HTTP_REFERER']; 
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Altra soluzione potrebbe essere quelle di fare eseguire quello che c'è dentro "eseguiPHP.php" direttamente dalla pagina con il form cioè farla ricaricare con i dati del $_POST e mostrare a video quello che ti interessa nel caso questi valori siano settati e magari aggiungendoci dei controlli alla sessione.

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