Ir para conteúdo

POWERED BY:

Arquivado

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

LilianFreitas123

Passar variável PHP para Javascript

Recommended Posts

Boa tarde,

 

Tenho um código PHP que usa um confirm dialog do Javascript. Se o usuário clicar em "OK", o mesmo deve ser redirecionado à outra página. Meu problema está em passar uma variável PHP dentro da URL que está sendo chamada em JavaScript.

Segue abaixo um trecho do código:

echo '<script>
                var email = "<?php echo $lista->emailHospede; ?>";
                if (window.confirm("Existe um ou mais registros para esse Hóspede. Deseja visualizar?")) {
                 window.location.href = "consultarEmail.php?email=" +email;
                }</script>';

Compartilhar este post


Link para o post
Compartilhar em outros sites


echo '<script>

var email = "'.$lista->emailHospede.'";

if (window.confirm("Existe um ou mais registros para esse Hóspede. Deseja visualizar?")) {

window.location.href = "consultarEmail.php?email=" +email;

}</script>';

Compartilhar este post


Link para o post
Compartilhar em outros sites
echo '<script>
var email = "'.$lista->emailHospede.'";
if (window.confirm("Existe um ou mais registros para esse Hóspede. Deseja visualizar?")) {
window.location.href = "consultarEmail.php?email=" +email;
}</script>';

 

Não funcionou :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

Lilian, se não funcionou temos 3 alternativas:

1 - Sentar e chorar;

2 - Esperar a bola de cristal voltar da assistência técnica para ai adivinhar o erro;

3 - Você informar o erro e nós tentarmos corrigi-lo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Por que, além das três opções acima, também não pára de dar echo em javascript e escreve ele normalmente? É só fechar a tag PHP e reabrir quando quiser. Assim fica bem mais difícil ter problemas com aspas, por exemplo.

?>
<script type="text/javascript">
var email = "<?php echo $lista->emailHospede; ?>";
if(window.confirm("Existe um ou mais registros para esse Hóspede. Deseja visualizar?")){
	window.location.href = "consultarEmail.php?email=" +email;
}
</script>
<?php

Ou então simplifica o código em vez de ficar dando voltas e mais voltas pra fazer uma coisa que poderia ocupar uma só linha, talvez duas:

?><script type="text/javascript">if(window.confirm("Existe um ou mais registros para esse Hóspede. Deseja visualizar?")){ window.location.href="<?php echo "consultarEmail.php?email=".$lista->emailHospede; ?>"; }</script><?php


// Com quebra de linhas fica assim:
?>
<script type="text/javascript">
if(window.confirm("Existe um ou mais registros para esse Hóspede. Deseja visualizar?")){
	window.location.href="<?php echo "consultarEmail.php?email=".$lista->emailHospede; ?>";
}
</script>
<?php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Por que, além das três opções acima, também não pára de dar echo em javascript e escreve ele normalmente? É só fechar a tag PHP e reabrir quando quiser. Assim fica bem mais difícil ter problemas com aspas, por exemplo.

Se você copiar/colar o código verá que não existe nenhum erro de sintaxe no JS...

 

Ou então simplifica o código em vez de ficar dando voltas e mais voltas pra fazer uma coisa que poderia ocupar uma só linha, talvez duas:

"Simplifica o código" tirando as quebras de linha, sério?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você copiar/colar o código verá que não existe nenhum erro de sintaxe no JS...

 

"Simplifica o código" tirando as quebras de linha, sério?

Não, to brincando. Obvio que é sério. E mais obvio ainda que não to falando de quebra de linha e sim de ficar abrindo e fechando aspas simples e aspas duplas desnecessariamente. Achei que fosse meio claro que eu tava falando disso.

 

Achei que a função dos moderadores fosse, inclusive, serem educados. Mas eu pareço estar bastante enganado.

 

Dispenso ironias, principalmente vindas de um moderador. Obrigado.

 

EDIT: Ah, como é só pra bom entendedor que meia palavra basta, quando eu disse "// Com quebra de linhas fica assim:", eu só coloquei as quebras de linha pro código ficar mais legível. Nunca disse que as quebras de linha eram a simplificação. Justo todo o resto, menos isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não, to brincando. Obvio que é sério. E mais obvio ainda que não to falando de quebra de linha e sim de ficar abrindo e fechando aspas simples e aspas duplas desnecessariamente. Achei que fosse meio claro que eu tava falando disso.

 

Achei que a função dos moderadores fosse, inclusive, serem educados. Mas eu pareço estar bastante enganado.

 

Dispenso ironias, principalmente vindas de um moderador. Obrigado.

 

EDIT: Ah, como é só pra bom entendedor que meia palavra basta, quando eu disse "// Com quebra de linhas fica assim:", eu só coloquei as quebras de linha pro código ficar mais legível. Nunca disse que as quebras de linha eram a simplificação. Justo todo o resto, menos isso.

Tchê, o problema não é o que você ACHA que escreveu e sim o que você escreveu de fato, vamos ler (olha o sublinhado e olha o primeiro exemplo)?

 

Ou então simplifica o código em vez de ficar dando voltas e mais voltas pra fazer uma coisa que poderia ocupar uma só linha, talvez duas:

?><script type="text/javascript">if(window.confirm("Existe um ou mais registros para esse Hóspede. Deseja visualizar?")){ window.location.href="<?php echo "consultarEmail.php?email=".$lista->emailHospede; ?>"; }</script><?php


// Com quebra de linhas fica assim:
?>
<script type="text/javascript">
if(window.confirm("Existe um ou mais registros para esse Hóspede. Deseja visualizar?")){
	window.location.href="<?php echo "consultarEmail.php?email=".$lista->emailHospede; ?>";
}
</script>
<?php

 

Tirar o JS de dentro do <?php ?> e deixar ele todo em uma linha simplificou o que? Complicado né... ainda mais que como disse, não havia erro de sintaxe algum...

 

Achei que a função dos moderadores fosse, inclusive, serem educados. Mas eu pareço estar bastante enganado.

 

Dispenso ironias, principalmente vindas de um moderador. Obrigado.

Disponha.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Código 1:

echo '<script>
 var email = "<?php echo $lista->emailHospede; ?>";
 if (window.confirm("Existe um ou mais registros para esse Hóspede. Deseja visualizar?")) {
    window.location.href = "consultarEmail.php?email=" +email;
}</script>';

Código 2:

?>
<script type="text/javascript">
if(window.confirm("Existe um ou mais registros para esse Hóspede. Deseja visualizar?")){
	window.location.href="<?php echo "consultarEmail.php?email=".$lista->emailHospede; ?>";
}
</script>
<?php

Eu não acho. O que eu digo é, de fato, o fato. Não confundo palavras. Cada palavra tem seu único sentido e significado. Não entender isso é uma opção comum que as pessoas escolhem {ou simplesmente não são capazes de perceber a outra}.

 

  1. Não precisa ficar abrindo e fechando aspas e aumentar as chances de erro com a sintaxe, podendo simplificar o processo abrindo e fechando as tags php onde for necessário.
  2. Não tem necessidade de ecoar uma string php dentro de uma variável javascript e depois concatenar essa variável com um string, ainda abrindo e fechando aspas simples e duplas.

Simplificar: Fazer com que (algo) fique mais simples; tornar menos complicado: esse procedimento simplificou o projeto; sua opinião simplifica o problema.

Fazer com que fique compreensível ou fácil: simplificar uma teoria.
Aritmética. Ocasionar a conversão dos termos, numa fração, para números primos ou para termos menores; reduzir.

 

E, pra quem sabe ler, também pode significar o termo "Evitar erros desnecessários" e não "Tirar quebras de linhas". O que eu disse é exatamente o que eu disse, no sentido que eu disse. É só ler exatamente como está escrito, e não como você ACHA que está escrito.


E basicamente essa é uma discussão desnecessária. Tão desnecessária quanto a sua grosseria com alguém que só pediu ajuda e nem foi pra você, mas pra comunidade.

 

Tão desnecessário quanto essa resposta:

 

Lilian, se não funcionou temos 3 alternativas:

1 - Sentar e chorar;

2 - Esperar a bola de cristal voltar da assistência técnica para ai adivinhar o erro;

3 - Você informar o erro e nós tentarmos corrigi-lo.

Educação vem em primeiro lugar. Isso eu aprendi muito bem. E as pessoas gostam dela. E tem gente que acaba fazendo o que as outras não tem coragem: dizer a quem é/foi mal educado que essa pessoa deveria repensar sua vida. Seja essa pessoa quem for. Educação é primordial. Principalmente quando ninguém lhe foi mal educado e/ou grosseiro anteriormente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entender isso é uma opção comum que as pessoas escolhem {ou simplesmente não são capazes de perceber a outra}.

"Nunca discuta com um idiota pois primeiro ele te rebaixa ano nível dele, depois ele te vence por experiência."

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.