Como iniciar sessões em PHP com um arquivo Prepended

Para utilizar sessões, você precisa chamar o session_start () função em cada página que irá utilizar sessões. Isto pode ser complicado, especialmente se você está tentando alinhavar sessões em vários programas PHP. Você pode usar um auto_prepend_file chamar session_start e, ao fazê-lo, você não tem que alterar quaisquer outros arquivos!

No exercício seguinte, você cria dois arquivos: um que será o arquivo principal e outro contendo uma função prepended para iniciar uma sessão. Antes de realizar este exercício, você deve garantir que .htaccess arquivos de trabalho ou que você pode alterar a configuração do servidor web Apache.

Certifique-se de reiniciar o Apache se você fizer uma alteração na configuração.

Dentro do .htaccess arquivo para a raiz do documento, coloque o seguinte código:

auto_prepend_file php_value "prepend.php"

Alternativamente, você pode adicionar essa linha dentro da sub-rotina na configuração do Apache para o seu servidor web para o seu documento raiz. Por exemplo, se o seu documento raiz é # 147-/ Var / www# 148- você pode adicionar essa linha após a # 147-/ Var / www# 148-> directiva e antes da linha de fechamento na configuração do Apache.

Abra o seu editor de texto e criar um novo arquivo vazio. Dentro do arquivo, coloque o seguinte código:

? Lt;? Phpif (isset ($ _ SESSION)) {print "! Session começou" -} else {print "Sessão ainda não começou" -}>

Salve o arquivo como session.php dentro de sua raiz de documentos.

Abra um navegador web e apontar para http: //localhost/session.php. Você deve ver uma página como esta.

image0.jpg

Minimizar o navegador web e criar um novo arquivo dentro do seu editor de texto. Dentro desse arquivo coloque o seguinte código:

? Lt;? Phpsession_start () ->

Salve o arquivo como prepend.php na raiz do seu documento.

Dentro de seu navegador web, recarregar o session.php arquivo ou ir para http: //localhost/session.php para ver o session.php arquivo que você criou anteriormente. Agora você deve ver uma página como esta.

image1.jpg

Se você receber uma página em branco ou um erro exibida através do navegador, então o arquivo prepended não foi encontrado. Verifique as coisas simples, como a ortografia do arquivo (prepend.php). Também certifique-se de que o arquivo que você ligou com o auto_prepend_file directiva é onde deveria estar, na raiz do documento, se é assim que seu servidor web está configurado.

Se você receber uma página que ainda diz "Sessão não começou", então há uma chance de que o Apache não está vendo o seu auto_prepend_file directiva em todas. Se você colocá-lo em um .htaccess arquivo na raiz do seu documento, você precisa ter certeza de que o Apache está lendo o .htaccess Arquivo. Continue a ler ou verificar com o seu provedor de hospedagem para ver se .htaccess arquivos são permitidos.

Algumas configurações de servidor web não permitem .htaccess arquivos. Você pode reconfigurar o Apache para permitir que eles, alterando o AllowOverride directiva para Todos para o diretório a partir do qual você quer ler o .htaccess arquivo (neste caso, a raiz do documento). A directiva deverá ser parecido com este:

AllowOverride All

arquivos prefixado pode ser ajudantes incríveis, mas às vezes também pode causar confusão. Por exemplo, se você não tem certeza por que um programa está fazendo alguma coisa, um arquivo anexado automaticamente às vezes pode acrescentar a essa confusão, porque ele carrega tantos outros arquivos e funções - a adição de um amplo espaço para erro.

Além disso, todos os pedidos devem agora usar esse arquivo anexado automaticamente, o que pode causar problemas de desempenho se você encadear muitos necessário e incluído arquivos a partir desse ficheiro prepended. Com isso dito, os benefícios normalmente superam as desvantagens para arquivos prefixado.

menu