Ir para conteúdo
Fórum Script Brasil
  • 0

Variavel De Php Para Javascript


Rudimar

Pergunta

Tem uma janelinha (tipo Popup) onde o usuário informa seu nome de usuário e senha. Depois o sistema é redirecionado para outra pagina. Se que precisiaria abrir em tela cheia, mas não estou conseguindo. Abre na propria janela popup.

Veja no final do código que a pagina é redirecionada usando o header.location, porque estou trabalhando com uma variável em php. Então não tenho como colocar em window.opener.location o nome da pagina a ser aberta, porque o nome da página está definida em uma variável php.

Tentei usar assim mesmo, deixando com nulos o nome da página em window.opener.location.

Mas não funciona. Como já disse, abre na mesma janela Popup e precisaria em tela cheia.

Uma solução para isto seria pegar o conteudo da variavel em php e transporta-la para JavaScript. Será que tem jeito de fazer isto?? Ou alguma ideia melhor??

Puxa que saco.. a gente faz de um jeito dá problema, muda o método e dá problema... to ficando meio pirado com isto já...

Se alguém puder ajudar agradeço...

<script language="JavaScript">

function fechar(){

window.opener.location='';

window.close();

}

fechar();

</script>

<?

if($pagina == "AutosListar"){

header("Location: "."Autos/AutosListar.php4");

}

?>

Link para o comentário
Compartilhar em outros sites

22 respostass a esta questão

Posts Recomendados

  • 0

Mas a variavel tem valor sim... já testei para ver se a variável esta recebendo algum valor... sad.gif Magoei...Eu vou chorar...buaaa!!!!

Estes programs estão me deixando maluquinho.... Porque que não fui estudar turismo... Pelo menos teria certeza de que falaria para o turista: Olha ali a montanha... e a montanha estaria lá com certeza...

mas estas malditas variáveis... onde se enfiam quando precisamos delas....

Link para o comentário
Compartilhar em outros sites

  • 0

pode ser a atribuição da variavel que esta NULL.. tente colocar

echo $variavel;

exit;

para interromper o php e mostrar o valor da variavel que esta passando para o JS.. antes de entrar no JS para ver se aparece o valor.. o problema pode estar no php e não no JS..

<?

$teste = "pagina";

?>

<script language="JavaScript">

function fechar(){

window.opener.location=<? echo "$teste"; ?>

window.close();

}

fechar();

</script>

Link para o comentário
Compartilhar em outros sites

  • 0

Olha só. Peguei e fiz um teste em uma nova pagina, só para testar mesmo. O codigo que coloquei foi o seguinte:

<?

$teste = "www.negocios.online.nom.br";

?>

<script language="JavaScript">

function fechar(){

window.opener.location=<? echo "$teste"; ?>

window.close();

}

fechar();

</script>

Ao rodar este codigo, nada acontece. Fica uma tela em branco. Será que a parte do codigo em JS está sendo executado?? Tem algum lugar em que voce habilita o funcionamento do JavaScript??

Link para o comentário
Compartilhar em outros sites

  • 0

vai ficar em branco porque voce não esta mandando aparecer nada... o echo que colocou vai ficar dentro do js.. roda o que fez e va em exibir;codigo fonte e veja no script, se quiser aparecer na tenha coloca um alert.. tipo:

<?

$teste = "www.negocios.online.nom.br";

?>

<script language="JavaScript">

function fechar(){

alert("a variavel é : $teste");

window.opener.location=<? echo "$teste"; ?>

window.close();

}

fechar();

</script>

Link para o comentário
Compartilhar em outros sites

  • 0

Executei o codigo e vui verificar lá em Exibir código fonte do navegador e observei que o codigo constante lá não é o mesmo. Veja abaixo:

Codigo constante no menu Exibir:

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#FFFFFF" text="#000000">

<script language="JavaScript">

function fechar(){

var minhavariavel="Olá"}

fechar();

</script>

</body>

</html>

Codigo original que foi executado:

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#FFFFFF" text="#000000">

<?

$teste = "www.negocios.online.nom.br";

?>

<script language="JavaScript">

function fechar(){

var minhavariavel=<?$variavel = "Olá";

echo "\"$variavel\"";?>

}

fechar();

</script>

</body>

</html>

Porque está ocorrendo isto??

Link para o comentário
Compartilhar em outros sites

  • 0
Olha só. Peguei e fiz um teste em uma nova pagina, só para testar mesmo. O codigo que coloquei foi o seguinte:

<?

$teste = "www.negocios.online.nom.br";

?>

<script language="JavaScript">

function fechar(){

window.opener.location=<? echo "$teste"; ?>

window.close();

}

fechar();

</script>

Ao rodar este codigo, nada acontece. Fica uma tela em branco. Será que a parte do codigo em JS está sendo executado?? Tem algum lugar em que voce habilita o funcionamento do JavaScript??

Tenta assim:

<?
$teste = "www.negocios.online.nom.br";
?>


<script language="JavaScript">
function fechar(){
window.opener.location=<? echo "\"$teste\""; ?>
window.close();
} 
fechar();
</script>

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Quase conseguiu. Agora a variável em JS está aparecendo, mas o site não está sendo redirecionado para a url especificada na variável. Fica parado em uma tela em branco. Abaixo o codigo original e em seguida o que mostra no menu Exibir - Codigo fonte.

Codigo original:

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#FFFFFF" text="#000000">

<?

$teste = "www.negocios.online.nom.br";

?>

<script language="JavaScript">

function fechar(){

window.opener.location=<? echo "\"$teste\""; ?>;

window.close();

}

fechar();

</script>

</body>

</html>

Codigo exibido no menu Exibir Codigo fonte:

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#FFFFFF" text="#000000">

<script language="JavaScript">

function fechar(){

window.opener.location="www.negocios.online.nom.br"window.close();

}

fechar();

</script>

</body>

</html>

Só uma curiosidade: Porque no codigo exibido no menu Exibir, não aparece a parte do programa em php?, ou seja, o código abaixo:

<?

$teste = "www.negocios.online.nom.br";

?>

Bom, de qualquer forma, a variável JS não está mais nula. Só falta redirecionar...

Link para o comentário
Compartilhar em outros sites

  • 0
Quase conseguiu. Agora a variável em JS está aparecendo, mas o site não está sendo redirecionado para a url especificada na variável. Fica parado em uma tela em branco. Abaixo o codigo original e em seguida o que mostra no menu Exibir - Codigo fonte.

Codigo original:

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#FFFFFF" text="#000000">

<?

$teste = "www.negocios.online.nom.br";

?>

<script language="JavaScript">

function fechar(){

window.opener.location=<? echo "\"$teste\""; ?>;

window.close();

}

fechar();

</script>

</body>

</html>

Codigo exibido no menu Exibir Codigo fonte:

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#FFFFFF" text="#000000">

<script language="JavaScript">

function fechar(){

window.opener.location="www.negocios.online.nom.br"window.close();

}

fechar();

</script>

</body>

</html>

Só uma curiosidade: Porque no codigo exibido no menu Exibir, não aparece a parte do programa em php?, ou seja, o código abaixo:

<?

$teste = "www.negocios.online.nom.br";

?>

Bom, de qualquer forma, a variável JS não está mais nula. Só falta redirecionar...

Vamos lá ! smile.gif

Tenta assim ó

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF" text="#000000">
<?
$teste = "www.negocios.online.nom.br";
?>


<script language="JavaScript">
function fechar(){
window.opener.location=<? echo "\"$teste\""; ?>;

window.close();
} 
fechar();
</script>


</body>
</html>

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

O que foi que mudou no código? Só acrescentou o ; no final do codigo, como abaixo:

window.opener.location=<? echo "\"$teste\""; ?>;

Isto daí eu já fiz também. Não funciona.

To achando que meu navegador tá meio maluco. Olha só. To rodando um programa e tem lá algumas variáveis que não perdem o seu valor. Até desliguei o computador. Quando reinicio o computador, as variáveis estão lá com o mesmo valor quando havia desligado. Será que é virão??

De qualquer forma obrigado.

Link para o comentário
Compartilhar em outros sites

  • 0

Pessoal, dando continuidade a este problema, sinto informar que continua problemático.

Veja o codigo abaixo:

// atribuo o valor "AutosListar" a variável $pagina.

<? $pagina = "AutosListar"; ?>

Aqui comeco um codigo em JS.

<script language="JScript">

<!--

// nesta linha pego o conteudo da variavel $pagina em php e jogo para a variavel em JS.

var xPagina <?=$pagina;?>

// testo o conteudo da variavel. Até aqui está tudo ok.

document.write xPagina;

Aqui, ainda em JS, verifico o conteudo da variavel. Misteriosamente, embora acima a variavel contem o valor "AutosListar", já aqui, ela está nula. Coloquei um alert dentro do If para testar se o if estava sendo executado. E não está sendo executado. A caixa de alert não está sendo exibida.

if(xPagina == "AutosListar"){

xPagina = "www.negocios.online.nom.br/Autos/AutosListar.php4";

alert("teste");

}

function fechar(){

window.opener.location='xPagina';

window.close();

}

fechar();

-->

</script>

É por isso que quando a funcao fechar() é executada fica parado numa tela em branco. é porque a variavel está nula.

Link para o comentário
Compartilhar em outros sites

  • 0
Pessoal, dando continuidade a este problema, sinto informar que continua problemático.

Veja o codigo abaixo:

// atribuo o valor "AutosListar" a variável $pagina.

<? $pagina = "AutosListar"; ?>

Aqui comeco um codigo em JS.

<script language="JScript">

<!--

// nesta linha pego o conteudo da variavel $pagina em php e jogo para a variavel em JS.

var xPagina <?=$pagina;?>

// testo o conteudo da variavel. Até aqui está tudo ok.

document.write xPagina;

Aqui, ainda em JS, verifico o conteudo da variavel. Misteriosamente, embora acima a variavel contem o valor "AutosListar", já aqui, ela está nula. Coloquei um alert dentro do If para testar se o if estava sendo executado. E não está sendo executado. A caixa de alert não está sendo exibida.

if(xPagina == "AutosListar"){

xPagina = "www.negocios.online.nom.br/Autos/AutosListar.php4";

alert("teste");

}

function fechar(){

window.opener.location='xPagina';

window.close();

}

fechar();

-->

</script>

É por isso que quando a funcao fechar() é executada fica parado numa tela em branco. é porque a variavel está nula.

Esse código tem um erro...

<script language="JScript">

<!--

// nesta linha pego o conteudo da variavel $pagina em php e jogo para a variavel em JS.

var xPagina <?=$pagina;?> //você esquceu do = !

// testo o conteudo da variavel. Até aqui está tudo ok.

document.write xPagina;

Aqui, ainda em JS, verifico o conteudo da variavel. Misteriosamente, embora acima a variavel contem o valor "AutosListar", já aqui, ela está nula. Coloquei um alert dentro do If para testar se o if estava sendo executado. E não está sendo executado. A caixa de alert não está sendo exibida.

if(xPagina == "AutosListar"){

xPagina = "www.negocios.online.nom.br/Autos/AutosListar.php4";

alert("teste");

}

function fechar(){

window.opener.location='xPagina';

window.close();

}

fechar();

-->

</script>

Tenta assim:

// nesta linha pego o conteudo da variavel $pagina em php e jogo para a variavel em JS.

var xPagina=<?echo "\"$pagina\"";?> //você esquceu do = !

Abraços wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Mas se eu perguntar o que tem na variável, volta correto:

document.write xPagina;

retorna "AutosListar"

Isto está correto. No entanto, na linha seguinte ao executar o if, não é executado. Veja abaixo:

if(xPagina == "AutosListar"){

xPagina = "www.negocios.online.nom.br/Autos/AutosListar.php4";

alert("teste");

}

O if acima não é executado.

Realmente não entendo o que está acontecendo.

Link para o comentário
Compartilhar em outros sites

  • 0

Bem, novidades. Acho que agora entendi o que está acontecendo, ou melhor, o que não está acontecendo.

A funcao fechar() não está sendo executada. Veja o codigo abaixo:

<script language="JScript">

<!--

function fechar(){

document.write "teste";

var xPagina=<?echo "\"$pagina\"";?>

if(xPagina == "AutosListar"){

xPagina = "www.negocios.online.nom.br/Autos/AutosListar.php4";

}

window.opener.location='xPagina';

window.close()

}

-->

fechar();

</script>

Agora a duvida é outra: Porque a função não está sendo executada??

Link para o comentário
Compartilhar em outros sites

  • 0

Galera sou totalmente iniciante em desenvolvimento web.

to querendo passar uma váriavel do PHP para um conteudo JAVASCRIPT. já tentei de tudo, procurei em outros locais. só um cara que vi disse exatamente o que acontece aki mais não disse o que fazer e é um post bem antigo.

segue abaixo o codigo do arquivo new.html

<?php
$msg = 'Seja bem-vindo ao site!';
?>
<html>
<head>
<title>Passar Variável PHP para Javascript</title>
</head>

<body>
<script type="text/javascript">
var mensagem = '<?php echo $msg;?>';
alert(mensagem);
</script>
</body>
</html>

na janela de alerta, esta aparecendo exatamente -> <?php echo $msg;?>

queria que mostrace o conteudo de $msg.

alguém ajuda ae??

vlw.

como disse isso deve ser bem simples, mais não sei o q fazer.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...