Visualizzazione risultati 1 fino 5 di 5

Discussione: PHP dubbio/problema con include su server esterno

  1. #1
    nextage non è connesso Utente giovane
    Data registrazione
    03-05-2005
    Messaggi
    40

    Predefinito PHP dubbio/problema con include su server esterno

    Speriamo di riuscire a spiegarmi.

    Ho un dubbio su come funzioni l'include (o che sia un bug di php).
    Per evitare di usare iframe che non sono accessibili, e avendo piu siti che usano un'area comune, ho preparato un portale comune sito su un host (riferiamoci a lui come hostcomune).
    All'interno dei singoli siti inserisco un include che chiama un file inc sito su hostcomune.
    Il problema è che il file include su hostcomune include in se stesso file presenti in una sua sottocartella.

    Essendo eseguito dal server degli altri host mi dice che non trova i files da includere.
    Per oviare questo problema tutti gli include dovrebbero usare il percorso assoluto (http : //hostcomune/file.php) ma questo significa che per ogni file che uso in locale per sviluppare, prima di fare l'upload dovrei modificare tutti gli include.

    Ho valutato come seconda soluzione di sovrascrivere la variabile di sistema include_path usando il codice ini_set("include_path", "hostcomune");
    Verificando la variabile viene sovrascritta (anche facendo fare un echo ini_get('include_path'); sul server hostcomune) però da cmq l'errore dicendo che non trova il file da includere sul server.

    Mettendo ad ogni include la path (ex: include(ini_get('include_path'). 'file.php');) funziona ma mi chiedevo, sovrascrivendo questa variabile non dovrebbe cercare sempre i file include da li?
    Oppure funziona solo se il valore di include_path è una cartella (quindi in automatico cerca di accodarlo alla path dello script originando un url tipo http : //hostattuale/filefolder/http : //hostcomune/file.php)?

    (ps ho dovuto mettere degli spazi negli url seno creava dei link)
    Ultima modifica di nextage : 09-01-2007 alle ore 14.03.38

  2. #2
    L'avatar di silverseraph
    silverseraph non è connesso AlterGuru
    Data registrazione
    27-04-2005
    Residenza
    Localhost
    Messaggi
    1,104

    Predefinito

    potresti utilizzare le costanti invece della funzione ini_set().

  3. #3
    nextage non è connesso Utente giovane
    Data registrazione
    03-05-2005
    Messaggi
    40

    Predefinito

    Il problema è che io ho una costante utilizzabile per questa cosa, ma essendo da usare in piu file si trova in un file di configurazione, che andrebbe incluso.
    Il problema è che per includerlo dovrei farlo specificando questa costante.
    Cmq usando semplici file php va tutto, il casino si pone se l'include va fatto via http:// il che mi fa dubitare che sia un vincolo (settato via ini cerca di usare una cartella col nome http:// a partire dal percorso da cui viene chiamato)
    Però sul sito di php non trovo nulla

  4. #4
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Su AlterVista non puoi includere file esterni e quindi se cerchi di includere un file con il percorso intero (che inizia con http://) su AlterVista non funziona.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  5. #5
    nextage non è connesso Utente giovane
    Data registrazione
    03-05-2005
    Messaggi
    40

    Predefinito

    Si tranquilli non mi riferivo a qui... era una domanda generica su php.
    Mi succede su un'applicazione che ho in ufficio.
    Provando cmq con percorso fisico anziche via url (fortunatamente sia l'hostcomune che le altre host sono sulla stessa macchina) funziona, quindi ho sempre piu il dubbio che se nn si specifica al'interno dell' include "nomefile.php" il percorso con http (tipo include "http : //host/file.php") ma si lascia che lo scriva da impostazione php lo accodi alla scriptpath e ottenga \\percorsofisico\http : //host/file.php
    In ogni caso ormai è solo curiosità, ho risolto facendo un'altra cosa (purtroppo mi sono reso conto che alcune dichiarazioni di classe cozzavano perchè hanno lo stesso nome, anche se nn erano uguali, ma erano di due sistemi diversi che nn possono essere variati)
    Solo che vorrei capire come funziona questa impostazione di php

Regole di scrittura

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