Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di LA VALE
    Registrato dal
    Sep 2003
    Messaggi
    667

    [php]"Include" che non funzionano

    Ho inserito in una pagina degli include.
    Se la pagina si trova al di fuori di cartelle, gli include funzionano correttamente.
    Quando metto gli include in una pagina che risiede in una sottocartella, mi si visualizza questo errore:

    Warning: Failed opening '/include/header_top.php' for inclusion (include_path='.;c:\php4\pear') in c:\documenti\sito\varie\aboutsite.php on line 26

    Warning: Failed opening '/include/header.php' for inclusion (include_path='.;c:\php4\pear') in c:\documenti\sito\varie\aboutsite.php on line 31
    ed altri simili per ogni include presente...

    il codice utilizzato è questo:

    <body>

    <div id="main">




    <?php include("/include/header_top.php"); ?>




    <?php include("/include/header.php"); ?>




    <div id="path">

    <?php include("/include/path.php"); ?>

    </div>

    <div id="ricerca">

    <?php include("/include/ricerca.php"); ?>

    </div>

    Sapreste aiutarmi?

    potete trovare una copia della pagina qui:
    http://lv4er.altervista.org/varie/aboutsite.php

  2. #2
    scusa ma lo slash a cosa serve?
    prova così

    <?php include("include/header_top.php"); ?>

  3. #3
    Utente di HTML.it L'avatar di LA VALE
    Registrato dal
    Sep 2003
    Messaggi
    667
    Faccio dei collegamentiche cerchino i file partendo dalla cartella principale del sito..
    se scrivo solo "include/pagina.php" mi cerca il file in una cartella che deve essere all'interno della cartella in cui creo il file.
    se scrivo "../include/pagina.php" il file mi funziona, ma volevo evitare questa scrittura, per non dover amattire nell'inserimento di troppi "../../../include/pagina.php", e per questo uso "/include/pagina.php"...

  4. #4
    Ma per arrivare ad un livello superiore devi per forza mettere ../ ! Altrimenti devi usare un URL assoluto!!! Non è che puoi parlare mezzo inglese e mezzo italiano con un inglese perchè non ti vuoi sforzare a cercare le parole! La sintassi è quella! Non la puoi cambiare!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  5. #5
    Originariamente inviato da mircov
    Ma per arrivare ad un livello superiore devi per forza mettere ../ ! Altrimenti devi usare un URL assoluto!!! Non è che puoi parlare mezzo inglese e mezzo italiano con un inglese perchè non ti vuoi sforzare a cercare le parole! La sintassi è quella! Non la puoi cambiare!
    quoto e sottoscrivo.. la sintassi è quella

  6. #6
    avevo gia affrontato questo problema tempo fa... e mi era venuto in mente di fare come hai fatto tu... ma ho capito che non poteva funzionare se non con le immagini o con gli url HTML insomma

    [img]/img/prova.jpg[/img]

    questo funziona... e cerca /img/prova.jpg a partire dalla root del tuo sito.

    con include il discorso è diverso perchè non lo puoi fare...

    Ricordo che mi venne la disperazione... ma sono riuscito a risolverlo così... (anche se poi ho scoperto che il sistema delle sottocartelle non è tanto gestibile)

    $path = "";
    $__nslash = count(explode("/", $_SERVER["SCRIPT_NAME"]))-2;
    for($a=0; $a<$__nslash; $a++) $path .= "../";
    include($path."include/header_top.php");

    spero ti possa essere utile
    ciao
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  7. #7
    Utente di HTML.it L'avatar di LA VALE
    Registrato dal
    Sep 2003
    Messaggi
    667
    Ah ecco, quindi il problema è proprio degli include....
    Volevo provare questa soluzione, per creare più facilmente pagine da una template (copia e incolla del codice)...
    E vabbè, dovrò ricordarmi di mettere tutti i punti...
    Grazie delle info..

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.