Jump to content

Comportamentos dos Browsers


MCK-12
 Share

Recommended Posts

Boas pra todos !! Estava aqui de volta deste scrip (não é meu):

<html>

<head>

<title>formulario1</title>

</head>

<body>

<form name="form" method="POST" action=""

<input type="text" name="nome" maxlenght="200">

<br>

<input type="submit" name="submit"value="Enviar">

<?php

if (isset($_POST['nome']))

echo "Olá",$_POST['nome'];

exit;

?>

</form>

</body>

</html>

Quando reparo que nao o consigo executar correctamente (que por defeito é o IE) no ZEND. Experimento no firefox e ele corre-me bem...Sinto assim necesidade de achar respostas a algumas questões imediatas:

1-Porquê?

2-Como posso mudar o browser a correr no Zend?

3-O que falta ao IE para fazer o mesmo?

Mas aproveito este topico não só para expor a minha duvida, mas para tambem debatermos este assunto que penso ser utili de abordar.

Será que diferentes browsers se comportam de modo diferente a correr o mesmo codigo de determinada web page ou é problema meu? E porquê? O que fazer para ultrapassar esse obstáculo? Como obter o maximo de compatibilidade entre os diferentes browers? Peço aos experts que exponham os vossos conselhos :P:)

Link to comment
Share on other sites

epa... isso é muito estranho...

Experimenta ver o código fonte das duas páginas.

Isto não me parece um problema de browsers. Nunca usai o zend, mas não deve estar a processar php nenhum quando primer "preview" ou qq coisa do estilo. Deves ter alguma path mal definida.

Link to comment
Share on other sites

Bem, assim a primeira vista é normal que isso não funcione...

          Erro: <form name="form" method="POST" action=""

Resolução: <form name="form" method="POST" action="<?=$PHP_SELF?>">

Link to comment
Share on other sites

O erro é este >

echo "Olá",$_POST['nome'];

Tem uma  "," a fazer a concatenação em vez de um "."

Tem que ser:

echo "Olá". $_POST['nome'];

Interessante....

Por acaso não reparei nessa parte e o mais engraçado é que mesmo como ele tinha, o código correu bem, sem erros...

E mais interessante ainda foi quando tentei assim:

<?php
if (!empty($_POST['nome']))
echo Ola, $_POST['nome'];
?>

E qual o meu espanto ao ver que tambem funcionou bem, sem erros.  ?

Há com cada coisa... lol

Link to comment
Share on other sites

-IceBurn-

Coloca error_reporting(E_ALL); no principio do código.

EDIT:

<?php
$var = "kingless";

echo Ola, $var;
?>

Notice: Use of undefined constant Ola - assumed 'Ola' in c:\documents and settings\User\ambiente de trabalho\htdocs\index.php on line 3

O código funciona mas com um Erro "Notice" Ola é assumido como uma constante, o teu servidor é que nao deve mostrar os erros.

Link to comment
Share on other sites

<html>

<head>

<title>formulario1</title>

</head>

<body>

<form name="form" method="POST" action="<?=$_SERVER['PHP_SELF']; ?>">

<input type="text" name="nome" maxlenght="200">

<br>

<input type="submit" name="submit"value="Enviar">

<?php

if (isset($_POST['nome']))

echo "Olá ".$_POST['nome'];

exit;

?>

</form>

</body>

</html>

Deve dar. :P

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

-IceBurn-

Coloca error_reporting(E_ALL); no principio do código.

EDIT:

<?php
$var = "kingless";

echo Ola, $var;
?>

Notice: Use of undefined constant Ola - assumed 'Ola' in c:\documents and settings\User\ambiente de trabalho\htdocs\index.php on line 3

O código funciona mas com um Erro "Notice" Ola é assumido como uma constante, o teu servidor é que nao deve mostrar os erros.

Tens razão, não me tinha lembrado das constantes  :wallbash:  :P

Link to comment
Share on other sites

Ola a todos,

Realmente este script chamou-me a atenção!

e pus-me a investigar a ver o que esta a acontecer e descobri uma coisa muito interesante!

Take a look at the following code block:
<?php
    $extensions = get_loaded_extensions();

    foreach($extensions as $extension) {
        echo $extension;
        echo ' (', implode(', ', get_extension_funcs($extension)), ')<BR />';
    }
?>

Breaking that down, it retrieves the names of all extensions currently loaded and cycles through them using a foreach loop. For each extension, it calls get_extension_funcs() to get the functions made available by that extension, then implodes that array into a string separated neatly by commas, then surrounds the whole thing in brackets. For example, if you have the wddx extension installed, you should see the following line somewhere in your output:
wddx (wddx_serialize_value, wddx_serialize_vars, wddx_packet_start, wddx_packet_end, wddx_add_vars, wddx_deserialize)

Note that the code uses echo rather than print because it uses the comma operator to chain together things to output, which is more efficient than using the concatenation operator. Put simply, the comma operator acts to pass several arguments to echo, which are output one by one individually. On the other hand, the concatenation operator, given three strings as in the example above, will combine strings one and two, then the new combined string with string three, then output the final combined string at once - having to chop and change strings twice is quite slow, and so should be avoided. 

LINK: http://hudzilla.org/phpbook/read.php/4_10_0

Como vem não há nada de errado, é só coisas novas que a malta as vezes não sabe, a partir de hoje diz não a concatenação! Diz sim à Vida!

Em relação a pergunta de como por o zend a usar o firefox, presumo que estejas a falar do browser interno, faz o seguinte:

clica em Tools

depois em Preferences

depois na tab Desktop tens uma area que é Browser Configuration, é só dar o caminho para o EXE do firefox.

Isto na versão 5.2. nas outras tem que se ver se é possivel.

Abraços a todos!

Link to comment
Share on other sites

Qual foi a parte que não entendeste? sobre o ',' ou sobre o Zend?

Abraços

Não percebi nada.

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.