Jump to content


Photo

Submetendo Variaveis P/ Pop Up?


  • Faça o login para participar
5 replies to this topic

#1 rockbilly

rockbilly

    Normal

  • Usuários
  • 94 posts
  • Sexo:Não informado
  • Localidade:BA

Posted 25/06/2004, 01:04

pessoal, minhas variaveis não estão indo para o pop up, alguem pode me dar uma luz neste script e me ajudar no q estou fazendo de errado?

teste.php

<?php

$nome = $_GET['nome'];
$email = $_GET['email'];

?>
<html>

<head>
<script>
function cad()
{

window.open("teste2.php?nome=<?=$nome?>&email=<?=$email?>","TESTE","width=200,height=80");

}
</script>
</head>

<body>
<form name="form" action="teste2.php" method="get">
Nome:<input name="nome" type="text"><br>
Email:<input name="email" type="text"><br>
<a href="#" OnClick="cad()"><img src="img/botao.gif"></a>
</form>


</body>

</html>

o arquivo de pop up:

teste2.php

<?php

echo "NOME É: ".$nome;
echo "<br>";
echo "EMAIL É: ".$email;

?>

o problema é a passagem dessas vars para o arquivo teste2.php ao qual eu chamo pelo POP UP e não chegam lá, alguem me ajuda?

brigadu!
"Buscai o Reino de Deus e o resto virá por acréscimo de misericórdia!!" By Mateus
"Quanto mais sei, mais sei que nada sei" By Sócrates
"O pior câncer é o EGOÍSMO!!" By Anônimo
"A Tecnologia é boa, mas deixa as pessoas EGOÍSTAS!!" By Anônimo

#2 Chinello Cybernético

Chinello Cybernético

    Simplesmente "Chinello"

  • Usuários
  • 1892 posts
  • Sexo:Masculino
  • Localidade:Canoas - RS

Posted 25/06/2004, 01:38

Problema no entendimento do HTML com o JS..

Tipo, tu só vai ter os valores em 'nome' e 'email' após submeter o form e recarregar as páginas passando os valores por query string..

Se tu quer q ao clicar na imagem já abra a janela com os valores do form, vc vai ter que usar JavaScript, assim:

<html>

<head>
<script>
function cad()
{

var nome = document.forms['form'].elements['nome'].value;
var email = document.forms['form'].elements['email'].value;

window.open("teste2.php?nome="+nome+"&email="+email ,"TESTE","width=200,height=80");

}
</script>
</head>

<body>
<form name="form" action="teste2.php" method="get">
Nome:<input name="nome" type="text"><br>
Email:<input name="email" type="text"><br>
<a href="#" OnClick="cad()"><img src="img/botao.gif"></a>
</form>


</body>

</html>

Tu tem q entender q o PHP só é executado no servidor.. Ou seja, tu não consegue jogar uma página no navagador, clicar num botão e fazer o PHP pegar os valores do formulário sem fazer a requisição ao servidor..

Bom, espero q tu entenda.. ;) (y)

Fui.. :P
Diego Sampaio - kroW - PHP Framework > http://chinelloweb.net/
chinello at gmail dot com

System > Athlon 64 3200+ Mobile | Kubuntu 7.04 Fesity Fawn AMD64 | Kernel 2.6.20-16
Coding @ KDE 3.5.7 | PHP 5.2.1 | Apache 2.2.3 | MySQL 5.0.38

#3 LucasMS

LucasMS

    Super Veterano

  • Usuários
  • 2076 posts
  • Sexo:Não informado

Posted 25/06/2004, 07:04

<?=$nome?>

esse codigo nao faz nada, vc tem q por o echo.
<? echo $nome ?>

#4 Troyan

Troyan

    12 Horas

  • Usuários
  • 285 posts
  • Sexo:Não informado
  • Localidade:Mesquita, Rio de Janeiro - Brasil
  • Interesses:Sou programador ASP, PHP, Javascript e ActionScript, além de ser curioso em JSP, ColdFusion e XSL. Trabalho com XML, XHTML, adoro webstandards e a W3C. Também trabalho com tableless e RIA's.<br><br> Formas de contato:<br> Email: dnunes[at]gmail[dot]com<br> ICQ: 68102402<br> MSN: troyandev@hotmail.com<br><br> -------------------------------------<br> - Rio de Janeiro, Brazil<br> - Troyan

Posted 25/06/2004, 07:09

..Na verdade o problema é simples: você não as está enviando. O que você faz é abrir uma janela e só.
..Use o seguinte:

<form action="teste2.php" onsubmit="this.target='popForm';window.open('','popForm','width=200,height=80,status=0');return true">


..E apague aquela função em JavaScript.
..Pronto.

....[]s
~~ ~
diego nunes
web engineer

~ ~~

#5 Chinello Cybernético

Chinello Cybernético

    Simplesmente "Chinello"

  • Usuários
  • 1892 posts
  • Sexo:Masculino
  • Localidade:Canoas - RS

Posted 26/06/2004, 00:14

<?=$nome?>

esse codigo nao faz nada, vc tem q por o echo.
<? echo $nome ?>

Na verdade, "<?=" é equivalente à "echo" ou "print"..

E qto ao q o Troyan falou, realmente, o código é melhor, pois ele realmente submete o formulário..

Mas recomendo colocar o target na TAG do HTML, e no evento onSubmit, apenas abrir a nova janela.. Dessa forma:
<form name="nomeForm" action="teste2.php" target="popForm" onSubmit="window.open('', 'popForm', 'width=200,height=80')">
Mas o meu código tb é uma alternativa q funfa.. ;) (y)

Fui.. :P
Diego Sampaio - kroW - PHP Framework > http://chinelloweb.net/
chinello at gmail dot com

System > Athlon 64 3200+ Mobile | Kubuntu 7.04 Fesity Fawn AMD64 | Kernel 2.6.20-16
Coding @ KDE 3.5.7 | PHP 5.2.1 | Apache 2.2.3 | MySQL 5.0.38

#6 rockbilly

rockbilly

    Normal

  • Usuários
  • 94 posts
  • Sexo:Não informado
  • Localidade:BA

Posted 27/06/2004, 13:52

Tu tem q entender q o PHP só é executado no servidor.. Ou seja, tu não consegue jogar uma página no navagador, clicar num botão e fazer o PHP pegar os valores do formulário sem fazer a requisição ao servidor..

Meu caro chinello, em primeiro lugar agradeço a solução postada, em segundo lugar eu já entendo e sem dos processos de server-side e client-side, só que o javascript ainda é um mistério para a maioria dos programadores em web!

vlw todos e pela dica do chinello!
"Buscai o Reino de Deus e o resto virá por acréscimo de misericórdia!!" By Mateus
"Quanto mais sei, mais sei que nada sei" By Sócrates
"O pior câncer é o EGOÍSMO!!" By Anônimo
"A Tecnologia é boa, mas deixa as pessoas EGOÍSTAS!!" By Anônimo




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq