Ir para conteúdo

POWERED BY:

Arquivado

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

LucasouzaRJ

formulário

Recommended Posts

Ao recarregar o fomulario tenho que mostrar os cmpo que já foram digitados.

Estou tentando assim:

 

<label class='form_field'>Duração:</label>
	<?
	if (!$_POST['dia']) $_POST['dia'] = 0;
	$dia = $_POST['dia'];
	?>
				<input type='text' name='dia' size='3' maxlength='3' value= '<? $dia; ?>' />
   	<label class='form_field'>Dias</label>

Mas não aparece nada quando recarrega.

o que está errado?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O teu IF está errado, e faltou um echo na hora de colocar no value.

<?php
if ($_POST['dia'] == '') //pq o post sempre vai existir. então o ! não funciona pra você nesse caso
   $dia = 0;
else
   $dia = $_POST['dia'];
?>
<input type="text" name="dia" size="3" maxlength="3" value="<?php echo $dia; ?>" />
<label class="form_field">Dias</label>

Compartilhar este post


Link para o post
Compartilhar em outros sites

William

fiz as alterações, porem o valor fica zerado.

 

<label class='form_field'>Duração:</label>
	<?php
	  if ($_POST['dia'] == '') {
		 $dia = 0;
	   } else {
		$dia = $_POST['dia'];}
	?>
	<input type="text" name="dia" size="3" maxlength="3" value="<?php echo $dia; ?>" />
	<label class="form_field">Dias</label>

Eu acho que pode ser a forma como eu estou dando o recarregar do formulário (no on change eu chamo uma função que executa o "window.location.reload")

 

<label class='form_field'>Num. pessoas:</label>
	<?php
	  if ($_POST['pax'] == '') {
		 $pax = 0;
	   } else {
		$pax = $_POST['pax'];}
	?>
	<input type='text' name='pax' size='3' maxlength='3' value= "<? echo $pax;  ?>" onChange="recarrega(this[0])"/>

gostaria de saber qual seria a form correta de se fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Voce quer que o envio seja automatico ?

Se for, por favor poste no forum de javascritp.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Marcio, eu estou desenvolvendo em php, inclusive voce pode ver que tenho outros posts sobre este desenvolvimento. Estou precisando dar um reload no formulário em determinado ponto (mais ou menos no meio) e preciso guardar o que foi preenchido. Pensei em usar o POST, mas para isso preciso deste reload. Se puder me ajudar, agradeço. Se for necessário mudar o post eu mudo. De qquer forma, grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, ainda nao entendi.

Mas se voce quer guardar o valor, use SESSION:

$value = array_key_exists('chave', $_SESSION) ) ? $value = $_SESSION['chave'] : '';
...
<input type="text" value="<?php echo $value; ?>" />

Compartilhar este post


Link para o post
Compartilhar em outros sites

Marcio, vou ver se eu consigo me explicar melhor.

O código abaixo é de um campo do form, como voce pode ver, o usuário digita o valor e quando recarregar a tela, eu preencheria o campo com o próprio valor que eu receberia do POST. Mas para que isso funcione eu tenho que em um determinado momento recarregar o form e é isso que eu não consigo fazer. É um submit que seria acionado após o preencimento de um determinado campo.

Já tentei com session e não funfou.

 

 

<label class='form_field'>Duração:</label>
	<?php
	  if ($_POST['dia'] == '') {
		 $dia = 0;
	   } else {
		$dia = $_POST['dia'];}
	?>
	<input type="text" name="dia" size="3" maxlength="3" value="<?php echo $dia; ?>" />
	<label class="form_field">Dias</label>   

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para fazer só com PHP você vai ter que colocar um botão submit do lado deste campo e o usuário clicar ao terminar de preencher.

 

Agora para ser automático, só com javascript.

 

Posso mover pra lá?

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu acho que pode ser a forma como eu estou dando o recarregar do formulário (no on change eu chamo uma função que executa o "window.location.reload")

Não entendi... pq faz dessa forma ?

O reload não vai enviar um submit, então não terá o POST ainda... realmente não tem como funcionar dessa maneira.

 

Já tentou preencher o campo com Javascript mesmo ?

 

Explique a 'mecânica' da coisa, para que possamos sugerir algo. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Alguem sabe como eu "forço" o submmit do formulário após um campo texto, desde que ele esteja preenchido?

você pode fazer um submit(); com Javascript.. ou ir enviando os dados com AJAX, cada vez que o usuário sair de um dos campos.

Tem como explicar o motivo ? ai talvez, possamos sugerir algo melhor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, vamos lá, vou tentar explicar tudo.

 

o forms é para indicar a um setor o que ele tem que preparar de alimento para uma viagem de aviao.

 

este forms é dividido assim

 

1 parte:

 

usuário entra 4 campos (2 selects e 2 txt)

 

2 parte:

 

escolhe o destino, o forms da reload (problema 1) e traz o cardapio referente a escolha (funcionando) o usuário completa esta etapa informando a quantidade de dias e quantas pessoas formam a tripulação.

nesta hora preciso de ressubmeter o formulario (problema 2) para liberar uma linha onde vai ter um txt e um submit para entrar os nomes dos tripulantes (vai gravando na tabela 1 a 1)

 

3 parte:

 

após a ultima entrada, é liberado uma espécie de relatório na tela informando o cardápio (item por item) e a quantidade relativa ao voo.

se estiver tudo ok a requisição é incluida, senão (uso um radio-button para isso) ele libera outra parte onde o responsavel poderá incluir novos itens ou aumentar quantidades do cardápio padrão.

 

e assim termindo, inclui a requisição para aprovação posterior.

 

 

a tela está construida no html e estou adicionando o php de acordo com que eu tenho lido, (estou estudando por conta própria, por isso ainda estou muito cru) e aapanhando muito para conseguir o que foi pedido. quando não consigo mesmo tenho recorrido aos amigos do forum para tentar tirar as duvidas e principalmente aprender. Mas confesso que tem horas que ainda tenho muita dificuldade em entender. Mas sabe como é trabalho, temos que dar sempre um jeito, ainda mais aqui na força.

 

espero que tenha conseguido explicar tudo e aguardo a ajuda de voces, visto que eu estou meio perdido.

 

abraço e obrigado a todos que tem tentado me ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom... o que você precisa é algo parecido com o famoso select cidade/bairro, onde você seleciona uma cidade e aparecem os bairros daquela cidade no outro select.

 

Para fazer assim como você está querendo, vai ter que usar Ajax. Tem um exemplo bem interessante do Will PHP aqui no fórum, que eu estava olhando estes dias... Dá uma procurada. Ele usa a biblioteca JS Prototype.

 

Carlos Eduardo

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.