Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

danielvlopes

problemas com include_path

Recommended Posts

Ola pessoal estou com problemas para definir meu include_path para o meu diretórios de include.

Gostaria de saber se alguem pode me ajudar pois é a primeira vez que preciso definir um include_path mas acho que estou fazendo certo, mas não funcina.

 

Abaixo coloquei o código que estou usando

Código:

 

<?php ini_set("include_path","/includes") ?><?php require_once('interface/cabecalho.php') ?><?php require_once('interface/arquivos_externos.php') ?>	<body>	<div id="topo">		<div id="cabecalho"></div>	</div>	<p> </p>	<p> </p>  .  .  .
E a minha estrutura de diretórios é o seguinte:

Imagem Postada

 

E o erro que estou tendo:

Warning: main(interface/cabecalho.php) [function.main]: failed to open stream: No such file or directory in /home/lapertos/public_html/_index.php on line 2

 

Fatal error: main() [function.require]: Failed opening required 'interface/cabecalho.php' (include_path='/includes') in /home/lapertos/public_html/_index.php on line 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

não tenho certeza, mas que tem que passar o caminho completo para eletipo : /home/lapertos/public_html/includes/pq não coloca direto no require?<?php require_once('includes/interface/cabecalho.php') ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hum, pode ser isso ein... vou testar e amanha posto aqui. Nao uso direto no require pq e um sistem complexo que sera dividido em varios modulos e as pagina em que darao require vao estar em pastas diferentes e eu gostaria de reaproveitar o maximo possivel de codigo e usando um path relativo, desta form com o include path eu nao preciso ficar mudando o caminho toda hora dentro das paginas pq sao muitas paginas. E o maximo de include que eu puder fazer do mesmo trecho de em outras paginas melhor, menos coisa para carregar pq a pagina anterior ja deu include na mesma coisa. Outra coisa, vou dentro deste diretorio includes, vou ter um diretorio para includes referentes ao layout um referente a funcoes e classes e un referente a arquivos de inicializacao do sistemas... e quase todos esses includes serao feitos em todas as paginas. Logo ia dar pau no caminho relativo de tudo.Outra forma boa de fazer isso e fazendo um documentroot na frente do todos os caminhos, ai fica sempre camihno absoluto, funciona... mas acho que setando o include path fica mais legal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sempre coloque o caminho completo, é melhor para compatibilidade entre servidores e configurações do phpse faz um sistema que usa o file e não usar o caminho completo vai um dia ter que alterar o sistema todo por causa de configurações diferentes entre servidores.. é complicao mas a gente supera :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu penso o contrario. Quanto mais caminho absoluto você tiver pior, mais linhas de código para alterar para o novo caminho você tera que mudar para poder colocar em um server novo. Se você usa os includes no include path, todas as imagens que compoem o layout em um css e todo caminho que você tiver que fazer que não seja por include nem por css através de document_root+caminho . Seu sistema funcionará exatamente igual em qualquer server sem alterar linha nenhuma para caminho. Apenas alterando o arquivo de inicialização que você criar que conteha dados como conexão de banco, caminho relativos e outras coisas mais que deve ser carregadas em todas as paginas.Vai por mim, sem duvida muito melhor, caminho absoluto é dar murro em ponta de faca.

Compartilhar este post


Link para o post
Compartilhar em outros sites

include_path é o caminho onde o php irá buscar tudo que forma chamdo por include requier e fopen depois de verificar o proprio diretorio da pagina que chamou o include ou require... ele vem setado no php.ini na configuração do php mas pode ser alterado em execução pela função ini_set .É um forma de você não ter que ficar especificando o caminho de seus includes toda hora, se você usa classes também pode usar o autoload e colocar o caminho das classes neste auto load ao inves de alterar o include_path mas no meu caso não tenho certeza se funciona pois não são classes que estou dando include, são trechos de html para compor meu layout, as classes aconselho usar o autoload para poder dar include automaticamente da classe que você instanciar durante sua página.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.