Ir para conteúdo

POWERED BY:

Arquivado

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

BJ_

:: Variáveis ::

Recommended Posts

Tenho uma dúvida que esta me matando. É a seguinte.

 

Quero fazer contas (artiméticas) com as seguintes variaveis obtidas de um filme:

$TEMPO (tempo do filme em minutos)

$RES_X (tamaho em pixels do eixo x)

$RES_Y (tamaho em pixels do eixo y)

 

O usuário informa de quantos filmes ele quer fazer a conta.

Vamos supor que seja 3.

A página que ele informa o número de filmes é a seguinte:

echo ("<form  action='calcular.php' method='POST'>");echo ("Quantos filmes você deseja calcular: <input type='text' name='num_filmes' size='20'>");echo ("<input type='submit' value='Calcular'>");
Até aih tudo tranquilo.

Daí eu criei um for que vai de 1 até o n° que o usuário especifiou.

Como o usuário informou 3 filmes a nova página (calcular.php) vai gerar 3 $TEMPO, 3 $RES_X e 3 $RES_Y.

 

for ($i=1;$i<=$num_filmes;$i++){       echo ("Tempo em minutos:");       echo ("<input type='text' name='tempo$i' size='20'>");       echo ("<input type='text' name='res_x$i' size='20'>");       echo ("<input type='text' name='res_y$i' size='20'>");}
O problema é como eu vou acessar essas váriaveis. Como acesso a váriavel $tempo1, $tempo2, $tempo3, $res_x1... que foi passada pelo formulário, pois eu não tenho um tamanho fixo de váriaveis.

 

Desde já agradeço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

nomeia o campo com '[]' no final, ele manda um array para o $_POST ... assim:

<input name="foo[]" value="a"><input name="foo[]" value="b">

Qando tu enviares o script que receber esse HTML vai poder ler $_POST['foo'][0] == 'a' e $_POST['foo'][1] == 'b'entendeu?? Qualquer dúvida posta denovo ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas se eu fizer isso ele vai escrever na caixa o valor...

value="a" vai ser o valor inicial escrito na caixa.

E ele assume foo[] como nome da váriável.

O meu problema a quantidade de filmes que o usuário vai informar...

se ele informar 5 filmes terie 5 variáveis para tempo, 5 para resolução.... e com o for eu crio as váriaveis todas mas não sei como acessa-las pois no código seguinte terei que "cria-las".

No formulário tera:

<input name='tempo$i'> onde tempo $i será uma váriavel entre 1 e o números de filme que o usuário informou.

 

Se ele informou 2 filmes terá:

<input name='tempo1'>

<input name='tempo2'>

 

O meu problema é resgatar essas váriaveis.

Olha como ficou o código gerado como você especificou:

 

<P><P><form  action='/tamanho/calcular.php' method='POST'>Tempo em minutos:<input type='text' name='filme[]' value='tempo1' size='20'><input type='text' name='filme[]' value='res_x1' size='20'><input type='text' name='filme[]' value='res_y1' size='20'>Tempo em minutos:<input type='text' name='filme[]' value='tempo2' size='20'><input type='text' name='filme[]' value='res_x2' size='20'><input type='text' name='filme[]' value='res_y2' size='20'><P><input type='submit' value='Calcular'><input type='hidden' name='verOK' value='1'><input type='hidden' name='num' value='2'></form>  

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe-me! Entendi agora tirando o value.

Claro ele armazana o que eu digitar na caixa do filme[].

beleza!

Agora novo problema.

Fiz um for para ele acessar as váriaveis no vetor.

mas quando digito isso dentro do for ele não me retorna nada.

for ($i=1;$i<=$num;$i++){echo ("$tempo[$i]");}

Essa variável $num eh a que contém a quantidade de filmes passada.

E já foi utilizada no for anterior a esse para listar a quantidades de filmes.

Parece que ele utiliza uma vez e desaloca por completo esta variável.

Mesmo antes dos for eu atribuindo o seu valor a uma variável diferente.

 

Valeu pela ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, usar o register_globals ligado sempre acaba dando algum problema desse tipo!!

dá preferencia a utilizar assim $_POST['num'] ou no máximo $_REQUEST['num'] ...

http://br.php.net/manual/pt_BR/reserved.variables.php

 

obs.: tem certeza que ele naum entra no for? talvez o vetor $tempo não exista!

Compartilhar este post


Link para o post
Compartilhar em outros sites

dokkalfr valeu pela ajuda!Já consegui resolver o problema. Coisa de iniciante. É que a váriavel num havia sido enviada pelo formulário anterior, consequentimente era perdida numa utilização em outro código.Só tive que colocar um hidden com o valor dela para enviar para o novo código.Vou testar dessa maneira que você falou tb $_POST['num'] devido a esse detalhe que você mencionou.Obrigado!Grande abraço!

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.