Visualizzazione risultati 1 fino 6 di 6

Discussione: passare dati tramite cartelle con PHP

  1. #1
    Guest

    Predefinito passare dati tramite cartelle con PHP

    ho uno script che gestisce username e password...
    e dei file protetti...

    finché sono nella stessa cartella tutto ok, ma se cerco di meterli in cartelle differenti inizia giustamente a non funzionare...

    una pagina protetta inizia così:
    Codice PHP:
    <?php
    include("config.php");
    include(
    "ctr.php");

    echo
    "<html>
    ...........

    config e ctr gestiscono i permessi

    io voglio fare in modo che possa mettere lo script in una cartella separata dai file protetti
    per esempio i file protetti sonno "area_privata" e le pagine dello script sotto "area_privata/script"

    è possibile farlo?


    CTR è fatto così:
    Codice PHP:
    <?php
    if(!file_exists("$p_a/nick/$nick.txt")){
    echo
    "questo nick non risulta registrato<br>
    <a href=\"
    $p_u/registra.php\">registrati</a>";
    exit;
    }

    if((
    $nick=="") || ($pw=="")){
    echo
    "non hai inserito il nick o la pssword<br>
    <a href=\"javascript:history.back(1)\">Torna indietro</a>"
    ;
    exit;
    }

    $cn=fopen("$p_a/nick/$nick.txt","r");
    $cnk=fgets($cn);
    fclose($cn);

    $fp=fopen("$p_a/db/$cnk/pw.txt","r");
    $fpk=fgets($fp);
    fclose($fp);

    if(
    $fpk!=$pw){
    echo
    "password errata<br>
    <a href=\"javascript:history.back(1)\">Torna indietro</a>"
    ;
    exit;
    }

    ?>

    mentre CONFIG così:
    Codice PHP:
    <?php

    $home
    ="http://www.mi2.altervista.org"; //indirizzo della homepage

    $p_a="."; // inserire il percorso assoluto (path) della cartella del sito (ATTENZIONE NON INSERIRE L'ULTIMO " / " )

    $p_u="http://www.mi2.altervista.org/area_riservata/script"; //inserire percorso della cartella del sito tipo (http://www.jarkless.it/public/jar_login)

    $nomesito="mi2.altervista.org"; //inserire il nome del sito

    $obj="iscrizione a mi2.altervista.org"; //oggetto della mail inviata con i dati di accesso

    $obj_r="dati accesso a mi2.altervista.org"; //oggetto della mail inviata con i dati di accesso recuperati

    $from=" staff mi2.altervista.org"; //nome del mittente(cioè voi che utilizzate questo script)

    $from_mail="tiziocaio@libero.it"; //email del mittente

    $_ss="Iscrizione avvenuta con successo<br>appena possibile Ti verrà inviata una email dallo lo STAFF contenente i dati di accesso"; //testo del messaggio che apparirà se l'iscrizione avviene con successo

    $err_mail="Si è verificato un errore nell'invio dell'e-mail.<br>Ripetere l'iscrizione inserendo un indirizzo <br> e-mail valido <br> <a href=\"registra.php\">ripeti iscrizione</a>"; //testo del messaggio che apparirà se l'iscrizione non avviene con successo
    ?>

  2. #2
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Non ho capito molto bene... ma ti ricordo che il parametro di include() è un percorso relativo del file che vai ad includere rispetto alla pagina.
    Tradotto (o quasi): puoi specificare un percorso relativo, esattamente come faresti per inserire un'immagine via HTML...

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  3. #3
    Guest

    Predefinito

    dici di fare:
    Codice PHP:
    <?php
    include("script/config.php");
    include(
    "script/ctr.php");

    echo
    "<html>
    ......
    ebbene ci avevo pensato, e la versione temporaneamente online è quella, ma non so perchè non va...
    mi restituisce:
    Codice:
    questo nick non risulta registrato
    registrati
    boh...

    non so il perchè...


    se vuoi ti posto tutte le le pagine complete.....

  4. #4
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Altra cosa: tieni presente che l'effetto della direttiva include() è quello di copiare meccanicamente il contenuto del file linkato all'interno del "contenitore"... quindi eventuali riferimenti tipo questo:
    Codice PHP:
    if(!file_exists("$p_a/nick/$nick.txt")){
    echo
    "questo nick non risulta registrato<br>
    <a href=\"
    $p_u/registra.php\">registrati</a>";
    exit;
    }
    vanno specificati relativamente al file principale, non a quello linkato... si è capito qualcosa?

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  5. #5
    Guest

    Predefinito

    non si è capito un granché, ma forse si...

    provo a spiegare quello che ho intuito
    visto che includo in una pagine che è in un'altra cartella la mail viene cercata in quella ...
    in quale viene cercata, in quella assoluta o in quella relativa?
    .... mi sono perso nei ragionamenti...

    Codice PHP:
    <?php

    $home
    ="http://www.mi2.altervista.org"; //indirizzo della homepage

    $p_a="."; // inserire il percorso assoluto (path) della cartella del sito (ATTENZIONE NON INSERIRE L'ULTIMO " / " )

    $p_u="http://www.mi2.altervista.org/area_riservata/script"; //inserire percorso della cartella del sito tipo
    io ho messo questi come dati, mi sa che il $p_a è quello da sistemare...
    lo script è sotto www.mi2.altervista.org/area_riservata/script
    la pagina che mi da errore sotto www.mi2.altervista.org/area_riservata/

    grazie ancicipatamente

  6. #6
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Facciamo un esempio concreto con queste ipotesi:
    - lo script si trova nella cartella corrente (.)
    - i file da integrare nello script si trovano nella cartella ./includes
    - i file da cercare si trovano nella cartella ./files

    Lo script principale conterrà le seguenti direttive:
    Codice PHP:
    <?php
    include ("includes/config.php");
    ?>
    mentre il codice di config.php cercherà nella cartella files in questo modo:
    Codice PHP:
    // questo è sbagliato:
    // if (file_exists ("../files/$name.txt"))
    if (file_exists ("files/$name.txt"))
    {
    ...
    }
    Spero adesso si sia capito un po' meglio... comunque probabilmente dovrai aggiustare proprio quella variabile (segui queste indicazioni semplificate per farlo).

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •