Ir ao conteúdo
  • Cadastre-se
Entre para seguir isso  
Visitante: VictorDolirio

[Resolvido] Php

Posts recomendados

Visitante: VictorDolirio

Saudações Presados Colegas

Eu não estou conseguindo configar direito o PHP(eu acho), é que as variaveis de ambiente (enviroment) não funcionam (ou não sei o que pode ser), por exemplo, quando eu coloco: echo $HTTP_USER_AGENT; dá um erro dizendo que esta variavel esta indefinida. Estou usando o PHP 4.3.2 no Microsft IIS do winXP. É engraçado que isso também acontece com o apache dentro do linux(eu uso o mandrake 9.1). please help me.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo,

Você tentou fazer assim ?


<?php echo $_SERVER["HTTP_USER_AGENT"]; ?>

Isso deve retornar a seguinte informação:

Mozilla/4.0 (compatible; MSIE 6.01; Windows NT 5.2)

Mas você poderia usar estes outros exemplos aqui - tomo a liberdade de copiar parte do manual do php - espero que seja útil.

=============================


Algo Útil
Vamos fazer alguma coisa um pouco mais útil agora. Nós iremos checar qual é o tipo de navegador que o visitante está utilizando para ver a nossa página. De fato, para fazer isto nós teremos que checar qual é o valor da string agente que o navegador envia como parte de sua requisição HTTP. Esta informação é armazenada em uma variável. Variáveis sempre começam com um símbolo de cifrão no PHP. A variável que nos interessa no momento é a $_SERVER["HTTP_USER_AGENT"].

Nota sobre as Auto-Globais do PHP: $_SERVER é uma variável especial reservada do PHP que contém todas as informações sobre o servidor web. Ela é conhecida como uma Auto-Global (ou Superglobal). Veja a página do manual relacionada as Auto-globais para mais informações. Estas variáveis especiais foram introduzidas no PHP 4.1.0. Antes desta versão, nós usávamos os velhos arrays $HTTP_*_VARS, como o $HTTP_SERVER_VARS. Entretanto, este estilo antingo foi removido, porém ainda existem. (Veja a nota sobre códigos antigos.)

Para chamar esta variável, nós podemos fazer isto:

Exemplo 2-2. Imprimindo a variável (Elemento Array)

<?php echo $_SERVER["HTTP_USER_AGENT"]; ?>  

Um exemplo de saída deste script poderia ser: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)





Há muitos tipos de variáveis disponíveis no PHP. No exemplo acima nós escrevemos um elemento Array. Arrays podem ser muito úteis.

$_SERVER é somente uma variável que é automaticamente disponibilizada para você pelo PHP. Uma lista de Variáveis Reservadas pode ser vista na seção Variáveis Reservadas do manual ou você pode pegar uma lista completa delas criando um arquivo como este:

Exemplo 2-3. Exibindo todas as variáveis pré-definidas usando a função phpinfo()

<?php phpinfo(); ?>  



Se você carregar este arquivo no seu navegador você irá ver uma página com todas as informações sobre o PHP junto com uma lista de todos os tipos de variáveis disponíveis para você.

Você pode colocar mútiplas declarações PHP dentro da tag PHP e criar pequenos blocos de códigos que faem muito mais do que um simples echo. Por exemplo, se você quer checar se o navegador é o Internet Explorer faça algo como isso:

Exemplo 2-4. Exemplo usando controles de declarações e funções

<?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
   echo "Você está usando o Internet Explorer
";
}
?>  

Um exemplo de Saída seria: Você está usando o Internet Explorer






Aqui nós mostraremos alguns novos conceitos. Nós temos a declaração if. SE você é familiar com a sintaxe básica usada pela linguagem C isto parecerá ser lógico para você. Se você não conhece a linguagem C ou alguma outra linguagem onde a sintaxe usada acima é usada, você provavelmente precisará de um livro introdutório sobre o PHP, dê uma lida nos primeiros capítulos do livro, ou leia a parte sobre a Referência da Linguagem no manual. Você pode encontrar uma lista de livros sobre PHP em at [url]http://www.php.net/books.php[/url].

O segundo conceito que iremos abordar é a chamada à função strstr(). A função strstr() é trazida junto com o PHP, ela faz uma busca em uma palavra por uma outra palavra. Neste caso nós procuramos pela palavra "MSIE" dentro de $_SERVER["HTTP_USER_AGENT"]. Se a palavra for encontrada, a função returna TRUE e se ela não for encontrada a função retorna FALSE. Se o retorno for TRUE, a declaração if ocorre e o código dentro dela é executado. Caso contrário, o código não é executado. Sinta-se à vontade para criar exemplos similares com o if, else, e outras funções como a strtoupper() e strlen(). Cada uma delas está no manual com seus respectivos exemplos.

Nós podemos avançar agora e mostrar à você como alternar entre os modos PHP mesmo que você esteja executando blocos de códigos:

Exemplo 2-5. Mesclando entre os modos PHP e HTML

<?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
?>
<h3>strstr retorna verdadeiro</h3>
<center>[b]Você está usando o Internet Explorer[/b]</center>
<?php
} else {
?>
<h3>strstr retorna falso</h3>
<center>[b]Você não está usando o Internet Explorer[/b]</center>
<?php
}
?>  

Um exemplo de saída deste script poderia ser: <h3>strstr retorna verdadeiro</h3>
<center>[b]Você está usando o Internet Explorer[/b]</center>





Ao invés de usar a declaração echo do PHP para imprimir a saída dos dados, nós saímos do modo do PHP e usamos o HTML normal. O importante à notar aqui é que a lógica do script continua intacta. Somente alguns blocos HTML será enviados de acordo com o que a declaração strstr() retornar, ou seja TRUE ou FALSE. Em outras palavras, se a palavra MSIE for encontrada ou não.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante: VictorDolirio

Aprecio sua generosidade, mas não era este comando em exclusivo. Basta que você execute o comando phpinfo(); para que tenha essas informações, e eu estava usando este comando já. O problema é que usando o array _server o cõdigo fica mais lento e desta forma eu vou ter que modificar todos os meus códigos que estavam num servidor usando as variaveis de ambiente e que eu resolvi testar em casa pra corrigir alguns erros. então eu necessito realmente das variaveis de ambiente. eu estaria grato se realmente alguém me ajuda-se com isso, pra mim não precisar instalar o linux agora...

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...