Ajuda com Java Script

7 respostas
F

Pessoal,

Preciso muito da ajuda de vocês.

Não estou conseguindo passar os valores de campos ocultos para outra página.
O problema é que os valores dos campos são variáreis. São registros de uma tabela no banco de dados.

Meu código está assim:

<script>
function envia(a, b, c, d, e ,f, p_url){
     document.form1.cur.value = a;
     document.form1.ano.value = b;
     document.form1.action = p_url;
     document.form1.submit();
 }
</script>

<input type="hidden" name="cur" id="cur" value="">
<input type="hidden" name="ano" id="ano" value="">

<a href="#"  onClick="javascript:document.form1.cur.value = '<?echo $v_ccur;?>'; 
                                 javascript:document.form1.ano.value = '<?echo $v_ano;?>';                 
                                 javascript:document.form1.action = 'dia_p_notas.php';
                                 javascript:document.form1.submit();">Nota</a>
No formulário dia_p_notas.php está assim:
$v_cur       = $_REQUEST['cur'];
$v_ano       = $_REQUEST['ano'];
Mas não está vindo nenhum valor.

Já tentei colocar assim:

<a href="javascript:document.form1.cur.value = '<?echo $v_ccur;?>'; 
                                 javascript:document.form1.ano.value = '<?echo $v_ano;?>';                 
                                 javascript:document.form1.action = 'dia_p_notas.php';
                                 javascript:document.form1.submit();"
       onClick="javascript:document.form1.cur.value = '<?echo $v_ccur;?>'; 
                                 javascript:document.form1.ano.value = '<?echo $v_ano;?>';                 
                                 javascript:document.form1.action = 'dia_p_notas.php';
                                 javascript:document.form1.submit();">Nota</a>
Mas também não deu.

Por favor, alguém pode me ajudar?

Obrigada

7 Respostas

Pedrosa

Apesar do GUJ ser um forum de Java vamos lá:

1 Nesse seu link chame somente a função.
2 Alimente os campos hiddens nessa função e submeta o formulário.

Ex:

<a href='#' onClick="testePHP();">TESTE</a>
function testePHP(){
    document.forms[0].campo1.value="<? echo $variavel 1?>";
    document.forms[0].campo2.value="<? echo $variavel 2?>";
    document.forms[0].submit();
}
xandevieira

só pra constar tem esse site http://gujs.com.br/

F

Já tentei fazendo uma função como você disse e também não deu certo.
Mas do jeito que você me passou o JavaScript reconhece as variáveis do PHP sem ter que passá-las por parâmetro?

Pedrosa

Sim se as variáveis já existem e se possuem valores não é preciso passar como parâmetro, imprima essa variável fora do campo como texto mesmo e veja se estão carregadas.

Ou de um alert:

alert('<? echo $variavel?>');
F

Ainda não deu.
Dá o seguinte erro quando coloco a variável em PHP no JavaScript.
Notice: Undefined variable: v_variavel in …

Fiz outro teste.

Dentro da função coloquei direto o valor para ver se funcionava:

function envia(){ document.form1.cur.value = '4'; document.form1.ano.value = '2007'; . . . document.form1.submit(); }

Mesmo assim não passou os valores para outra tela.

F

Agora consegui passar as variáveis, mas mesmo assim não passam para o próximo formulario:

<script>
function envia(){
     document.form1.cur.value = '<? echo $v_ccur ?>';
     document.form1.ano.value = '<? echo $v_ano ?>';
     document.form1.action = 'dia_p_notas.php';
     document.form1.submit();
 }
</script>

            <input type="hidden" name="cur" id="cur" value="">
            <input type="hidden" name="ano" id="ano" value="">

        <a href="javascript:envia();"
           onClick="javascript:envia();">
                 <img src="../imagens/dia_i_notas.gif" alt="NOTAS" title="Alterar notas" onmouseover="window.status='Alterar notas'; return true;"/></a>

Por favor, me ajude

Pedrosa

Como está recebendo essas variáveis na página dia_p_notas.php?

Veja como vc definiu a propriedade method da tag form, existe a tag form da primeira página?

Criado 19 de dezembro de 2007
Ultima resposta 19 de dez. de 2007
Respostas 7
Participantes 3