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

    negare accesso a una directory

    salve a tutti!

    è un problema classico, penso...:master:
    sto cercando di fare in modo che un utente non possa accedere direttamente ad uno script in una directory di un sito, facendo invece appararire, qualora uno tentasse, la classica scritta:
    no direct script access allowed
    volevo imitare i sistemi usati da joomla, cakephp, codeigniter, etc ect e ho visto che loro mettono all' inizio dello script la ovvia riga:
    if (!defined('BALUBA') exit ('no direct script access allowed');
    ho provato definendo 'BALUBA' nella pagina che permette l'accesso allo script 'segreto' tramite user e password, ma non mi funziona, nel senso che l'accesso rimane negato; VVoVe:
    e ho risolto il problema passando tramite $_SESSION oltre che user e password anche 'BALUBA';
    però non so se è una bischerata, se è la cosa giusta, se c'è di meglio....
    voi come fate ? (escludendo il sistema tramite settaggio via cpanel che volevo evitare!)

    grazie a tutti
    balubo

  2. #2

    Re: negare accesso a una directory

    Originariamente inviato da ciddoz
    if (!defined('BALUBA') exit ('no direct script access allowed');
    ho provato definendo 'BALUBA' nella pagina che permette l'accesso allo script 'segreto' tramite user e password, ma non mi funziona, nel senso che l'accesso rimane negato;
    Manca una parentesi. Comunque, a prescindere dalla quisquilia, deve funzionare: avevi una canna da qualche altra parte!

    Usando $_SESSION effettivamente puzza di bischerata (quantomeno stai usando un cannone per sparare a una mosca).

  3. #3
    ti ringrazio ntd per avermi dato retta, però anche corretto non mi funziona.

    questo è il codice nella pagina con login:

    define('BASEPATH', "blablabla");

    e questo è quello nella pagina dopo loggato (corretto):

    if (!defined('BASEPATH')) exit('No direct script access allowed');

    quello che succede è che la pagina viene negata sempre e comunque, sia che io acceda
    dall' esterno sia che io acceda tramite login. :berto:

    non capisco...
    dammi una mano!

    grazie
    ciddoz

  4. #4
    O ciddoz,

    il codice che hai pubblicato è corretto, ci metto il giassai sulla graticola. L'unica cosa che mi viene in mente è che entri appunto dove non puoi entrare, cioè il codice funziona e fa quello che deve fare. Metti una echo dopo il define:

    Codice PHP:
    define('BASEPATH'"blablabla");
    echo 
    "Ho definito il BASEPATH"
    e vedrai che questo define() non viene richiamato.

    PS: ricorda che il define devi eseguirlo SEMPRE, non viene tenuto in memoria tra una pagina e un'altra.

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.