Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    20

    [HELP]percorsi relativi

    Per spiegarmi meglio e venire subito al dunque vi espongo praticamente il mio problema.
    Voglio realizzare finalmente il mio primo sito interamente dinamico ma ho un problema con i percorsi relativi che do, nello specifico, al tag html per caricare il css esterno.
    Mi spiego meglio. Ho una classe chiamata htmlgenerator posta in una dir chiamata *libs*, dove inserisco tutte le classi e librerie varie, che contiene al suo interno metodi per generare le varie componenti del layout in html. Nello specifico il metodo getHeader() mi restituisce l'header del documento html con annesso il collegamento al foglio di stile che è relativo.
    Il problema non si pone quando la pagina che genero si trova nella radice, mentre quando richiamo la classe e i suoi metodi in una sotto directory il foglio di stile non viene caricato.
    Sapete come posso risolvere dinamicamente il problema senza utilizzare un percorso assoluto?

    Vi mostro come ho organizzato il tutto:

    +(radice)(index.php)
    |
    |--libs
    |
    |--html(pagine php\html, sotto dir per pagine php\html, dir per i css..etc.)
    |
    |--config

    Il problema si pone quando genero le pagine nella dir *html* e sue sotto dir., questo perchè il percorso al foglio di stile è: ./html/css/fogliodistile.css

    Spero di essere stato chiaro e soprattutto spero che qualcuno possa darmi una mano.

    Grazie Mille.

    gp
    ln -s /dev/brain /dev/null

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    20
    proprio nessuno sa darmi una mano?

    gs
    ln -s /dev/brain /dev/null

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    prova ad inserire il percorso del CSS come percorso assoluto.... anche perché non sapendo che altre elaborazioni faccia il tuo script si può solo tirare ad indovinare
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    20
    Ovviamente al momento sto risolvendo adottando un percorso assoluto ma il mio problema è usare i percorsi relativi.
    Per spiegarmi meglio:
    questo è il metodo della classe che contiene il percorso relativo del css...
    Codice PHP:
        // apro intestazione documento html;
        
    function getOpenHeader(){
            echo <<<HEAD
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
            <title> </title>
            <link rel="stylesheet" href="./html/css/main.css" type="text/css" />
        </head>
        <body>
        <div id="container_esterno">
            <div id="container">
            
                <div id="header">
                    
                    <div id="navigator">
                        <ul>
                            [*][url="#"]link[/url]
                            [*][url="#"]link[/url]
                            [*][url="#"]link[/url]
                            [*][url="#"]link[/url]
                        [/list]
                    </div>
                    
                    <div id="banner">
            
                    </div>
                    
                    <div id="menu">
                        


                            [url="#"]News[/url] |
                            [url="#"]Eventi[/url] | 
                            [url="#"]Master Class & Concorsi[/url]
                        </p>
                    </div>
                    
                </div>
    HEAD;
        } 
    Se richiamo il metodo in uno script al di fuori della directory html non ci sono problemi col css mentre se lo richiamo in altre sottodirectory ecco che nascono i problemi perché non trova più il percorso esatto.
    Lo script non fa altro che generare del codice html per il mio layout.

    Spero di essere stato chiaro.

    Grazie Mille.

    gp
    ln -s /dev/brain /dev/null

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    I percorsi assoluti servono proprio a prevenire questo genere di problemi. Togli il punto da quel percorso e sei apposto. Altrimenti, aggiungi una variabile $percorso:verifichi (tramite, ad esempio getcwd() ) dove ti trovi, poi conti gli "/" e saprai in che livello sei... a quel punto aggiungere tanti "../" quanti ne servono per compilare sta $percorso correttamente non dovrebbe essere difficile.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    20
    Ma se tolgo i punti non dovrebbe essere lo stesso? se ho html/css/main.css e e mi trovo ad esempio in html/pippo.php il css non verrà mai caricato perché lui si aspetta di trovarlo in html/html/css/main.css ...o no?
    Comunque ora provo se ho capito il tuo secondo metodo. Vediamo se riesco a cavarci fuori qualcosa.

    gp
    ln -s /dev/brain /dev/null

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    no, intendevo dire:
    codice:
    /html/css/main.css
    ossia un percorso assoluto.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    20
    Originariamente inviato da Andrea1979
    no, intendevo dire:
    codice:
    /html/css/main.css
    ossia un percorso assoluto.
    Si.Ma la radice non è html .

    gp
    ln -s /dev/brain /dev/null

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    ...bhè, lo saprai tu quale è la radice... io di certo non ho la sfera di cristallo.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    20
    Credo che forse non hai esattamente capito il mio problema.
    Ho la necessità di lavorare con percorsi relativi così da poter creare dinamicamente le mie pagine indipendentemente dalla profondità in cui verranno collocate nel filesystem (sotto directory).
    Sia in locale che in remoto la mia cartella di partenza è public_html che non è comunque la cartella radice (ovviamente sarà /home/nomeutente/etc...). Se uso getcwd() lui ad esempio mi restituisce il percorso partendo da /home/etc... e non da public_html che è invece la direcotory radice del documento html.
    Se uso i percorsi relativi nella su detta classe non avrò problemi quando andrò a generare il codice html nella dir public_html mentre li avrò quando questi saranno generati in sue sotto directory.
    E' un problema stupido ma fastidio, in quanto devo cambiare i percorsi tutte le volte che vado ad uppare il sito in remoto visto che il percorso assoluto è ovviamente diverso.

    gp
    ln -s /dev/brain /dev/null

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.