• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

ricardocoimbra

Duvida entre type="image" e type="submit"

8 mensagens neste tópico

<form id="login" name="login" onsubmit="return checkForm(this);" action="index.php" method="POST" enctype="multipart/form-data">

<input id="enviar" name="enviar" type="image"  src="../imagens/login-btn.gif" />

<input id="enviar" name="enviar" type="submit"  value="enviar"  /></form>

if($_POST['enviar']) {

echo"Tudo bem";

}

Pessoa alguem me sabe dizer porque é que com o type="submit" ele escreve-me "tudo bem" mas se o botao for como image ele já não me escreve...

Como resolver isto? so estou a mudar a propriedade do type :/

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

no código php, mete isto:

echo "<pre><code>Info do $_POST:<br />";
var_dump($_POST);
echo "<br />Info do $_FILES:<br />";
var_dump($_FILES);
echo "</code></pre>";

E vê as diferenças com um tipo e com outro. A função var_dump() vai-te dar a estrutura da variável. Se precisares de ajuda a perceber o resultado, mete aqui ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Djthyrax com o var_dump ele deu me as variaveis $_POST mas a dos $_files não deu nada, mas nao percebi bem onde queres chegar...

Quer dizer que se eu utilizar :

<input id="enviar" name="enviar" type="image"  src="../imagens/login-btn.gif" />

Não poço utilizar isto assim?

if($_POST['enviar']) {

echo"Tudo bem";

}

no código php, mete isto:

echo "<pre><code>Info do $_POST:<br />";
var_dump($_POST);
echo "<br />Info do $_FILES:<br />";
var_dump($_FILES);
echo "</code></pre>";

E vê as diferenças com um tipo e com outro. A função var_dump() vai-te dar a estrutura da variável. Se precisares de ajuda a perceber o resultado, mete aqui ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Modificando o type no form, quais são as diferenças no $_POST?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Um escreve "Tudo bem" se o type for submit, mas se o type for image já não escreve.

Depois com o type=image ele dá isto

["enviar_x"]=>

  string(2) "33"

  ["enviar_y"]=>

  string(2) "15"

De onde vem estes valores?

Modificando o type no form, quais são as diferenças no $_POST?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O browser manda esse valor relativo à imagem que estás a enviar (essa tem 33x15 pixels). Para verificares se foi enviado, experimenta:

if(!empty($_POST['enviar']) || (!empty($_POST['enviar_x']) && !empty($_POST['enviar_y'])) ){
echo "Tudo bem";
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Brigado djthyrax. Ja consegui

De nada, ainda bem que resolveu. ;)
0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora