Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Percorso File

  1. #1

    Percorso File

    Salve ho un problema col percorso di un file in php (header.php) che richiamo da più pagine in php presenti in www.miosito.com/dir1/dir2/dir3/dir4/index.php
    Se metto header.php nella root del sito e lo richiamo usando ..\..\..\..\..\header.php mi da sto errore:

    Warning: main(..\..\..\..\..\header.php): failed to open stream: No such file or directory

    Io vorrei mettere header.php in www.miosito.com/elements.
    Devo raggiungere il file con un percorso del tipo ..\..\..\..\..\header.php non con un percorso del tipo http://www.miosito.com/elements

    PS sono hostato su server Linux di Aruba

    Grazie in anticipo

  2. #2
    prova così: lo slash al contrario

    ../../../../../header.php

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Ciao, in genere può essere molto utile mettere ad esempio:
    codice:
    include "${_SERVER['DOCUMENT_ROOT']}/path/...ecc.../pagina.php";
    In questo modo è assoluto e il path locale della root del sito lo fornisce il php nella variabile sopra indicata.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Ora provo

  5. #5
    Nada non va nè con:
    include "${_SERVER['DOCUMENT_ROOT']}/path/../../../../header.php";
    nè con:
    include "${_SERVER['DOCUMENT_ROOT']}/path/../../../../../header.php";

  6. #6
    ovviamente senza i /../../ etc

    In quanto il .. riporta semplicemente alla directory superiore!

    Quindi se abbiamo il file header.inc.php nel path
    codice:
    /httpdocs/templates/first/
    avremo:
    codice:
        include "${_SERVER['DOCUMENT_ROOT']}/httpdocs/templates/first/header.inc.php";
    >++++[<++++++++++++++++>-]<++++++++.>++[<++++++++++++++++>-]<---.+++++++..+++. >+++++[<---------------->-]<+.>+++[<++++++++++++++++>-]<+++++++.++++++++++++++
    ++++++++++.+++.------.--------.

  7. #7
    Risolto grazie 1000

  8. #8
    Ho il solito problema e sono su Windows Aruba, qualcuno sà la soluzione???

    Io usavo abitualmente su Linux Aruba

    include $_SERVER['DOCUMENT_ROOT'] . /index.inc.php';

    adesso ho esigenze di usarlo su Windows Aruba e non funziona, come posso fare?


    Prima o poi anch'io vi insegnerò qualcosa

  9. #9
    Mi riaggancio...
    perchè usi questo tipo di notazione:
    ${_SERVER['DOCUMENT_ROOT']}
    invece di
    $_SERVER['DOCUMENT_ROOT']
    ???

  10. #10
    Ecco una funzione che feci per un altro utente di questo forum:

    Codice PHP:
    function getPath $curPath '' ) {
       
    $path str_replace'\\' '/' dirname(__FILE__) ) ;
       
    $count strlen$curPath ) ;
       
    $path = ( $count ) ? substr_replace$path '' , - $count ) : $path ;
       return ( 
    substr$path , -) == '/' ) ? $path $path '/' ;
    }

    echo 
    getPath(  ) ; 
    Questa funzione restituisce il path assoluto alla root del server. Se sei nella cartella includes/function.getPath.php
    allora passerai alla funzione il valore 'includes/' ed essa si preoccuperà di calcolare ilpath assoluto fino alla root del server. Se non passassi anche il percorso alla subfolder dove si trova la funzione essa ti restituirebbe il percorso fino alla cartella in cui si trova. Se la funzione la metti nella root, invece, non ci sono problemi! Ciao e spero possa esservi utile! Se avete problmi postate che vi spiego meglio! Ciao!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

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.