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

    include php risale solo di una cartella

    Salve,
    ho un piccolo problema con gli include in php.

    esempio per capirsi:

    ho un file (1.php) che richiama con un include un altro file (include.php) i 2 file sono in cartelle differenti,
    1.php è in /mamma/ e include.php è nella cartella /include/
    le 2 cartelle "mamma" e "include" sono sullo stesso livello.
    per richiamarlo ho usato <? include ("../include.php"); ?>
    e funziona, invece dentro "mamma" c'è un'altra cartella
    "papà" e un file 2.php che richiama il medesimo file include.php.
    ho utilizzato <? include ("../../include.php"); ?> e non lo richiama
    esce quest'errore:

    Warning: main(../../include.php): failed to open stream: No such file or directory in "path file"

    qualcuno sa dirmi come risolvere?

    c'è un modo particolare per far risalire più cartelle agli include in php??

  2. #2
    potresti scrivere include ('/include/include.php');

  3. #3
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    Se il file include è dentro la cartella /include lo dovrai richiamare con ../../include/include.php

  4. #4
    Originariamente inviato da Teuzzo
    Se il file include è dentro la cartella /include lo dovrai richiamare con ../../include/include.php


    che minchione


    come ha detto teuzzo funziona.

    il metodo suggerito da Emulman invece non mi va...

  5. #5

    Aiuto non riesco con include

    ciao scusatemi... sto cercando di migliorare il mio sito studiando senza conoscerlo il linguaggio php.
    Fino adesso ogni volta che dovevo modificare il mio menu di navigazione riaprivo ogni singola pagina del sito.. ora mi son detto ci saà un sistema per far apparire il menu in tutte le pagine e modificarlo solo in una!!!?

    Ebbene mi sto imbattendo nella funzione include ma non va?
    ho creato una pagina php dove ho inserito solo il menu.
    poi nelle mie pagine del sito ho cliccato la dove voglio inserire il menu inserendo il codice
    <p align="center"><?php include("../menuvannes.php"); ?>
    ho provato sensa / ma non va...

    sicuramente sbaglio qualcosa ma cosa?
    come si fa a far vedereuna seconda pagina ?

    grazie mille anticipatamente
    Vannes

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    40
    Spiega meglio "non va": cosa succede?

  7. #7

    Re: Aiuto non riesco con include

    Originariamente inviato da Vannes
    ciao scusatemi... sto cercando di migliorare il mio sito studiando senza conoscerlo il linguaggio php.
    Fino adesso ogni volta che dovevo modificare il mio menu di navigazione riaprivo ogni singola pagina del sito.. ora mi son detto ci saà un sistema per far apparire il menu in tutte le pagine e modificarlo solo in una!!!?

    Ebbene mi sto imbattendo nella funzione include ma non va?
    ho creato una pagina php dove ho inserito solo il menu.
    poi nelle mie pagine del sito ho cliccato la dove voglio inserire il menu inserendo il codice
    <p align="center"><?php include("../menuvannes.php"); ?>
    ho provato sensa / ma non va...

    sicuramente sbaglio qualcosa ma cosa?
    come si fa a far vedereuna seconda pagina ?

    grazie mille anticipatamente
    Conosci il significato di questi simboli?

    ../
    ./
    /

    significano 3 cose distinte e precise:

    / = cerca a partire dalla cartella ROOT (cioè dall'inizio della cartella server - cambia da windows a linux e da provider a provider).

    ./ = cerca nella stessa cartella del file, è possibile omettere tale indicazione e lasciare anche solo il nome del file.

    ../ = cerca in una cartella superiore il file.

    Una volta che conosci il significato puoi costruirti qualsiasi percorso, ad esempio:

    /home/pippo/ciao/include/fileA.php
    /home/pippo/ciao/include/fileB.php

    Puoi richiamare il fileB.php dal fileA.php con una dichiarazione del genere:

    Codice PHP:
    // inclusione del file presente sulla stessa cartella
    include("./fileB.php");

    // torna indietro di una cartella e poi risale.
    include("../include/fileB.php");

    // la slash iniziale obbliga a far partire lo script dalla root del server.
    include("/home/pippo/ciao/include/fileB.php"); 

    //Ai computer non importa che il percorso non sia specificato
    //in maniera efficiente, pertanto anche un percorso specificato
    //così è perfettamente valido:
    include("/home/pippo/ciao/include/../../ciao/include/./fileB.php"); 
    Non si possono sbagliare i percorsi se si conosce il significato della terminologia.

    Bye

  8. #8
    il fatto È che quello con semplicemente la root non funziona... come mai??

  9. #9
    Originariamente inviato da SimoGecko
    il fatto È che quello con semplicemente la root non funziona... come mai??
    Probabilmente perchè confondi la root del file system con il path / dell'url ovvero la document root.

    Per evitare tutti questi problemi di path, ti suggerisco di seguire quando indicato in questo articolo:

    Gestire le inclusioni di file in PHP

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.