Atualizado em 17 de Maio de 2013
Passar Variável PHP para Javascript
Salva galera,Dentro de uma página de internet algo que não podemos nunca deixar de lado e o bom e velho Javascript, seja para validar informações do lado do cliente ou até mesmo para criar efeitos em imagens e outras tantas aplicações que podemos desenvolver com ele. Como o javascript e algo indispensável se torna quase impossÃvel não haver uma relação entre o javascript com o PHP.
Por este motivo neste post vamos ver como passar variáveis PHP para Javascript. Tenho certeza que esta dica será muito valiosa para muitos.
Em nosso exemplo vamos similar um alert do javascript com um texto vindo de uma variável do PHP. Vamos ao exemplo.
<?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>
No exemplo acima usamos uma variável do javascript para receber o valor vindo do PHP, podÃamos usar diretamente, porém neste exemplo já podemos observa dois aspectos importantes (variável do Javascript e interação do javascript com php).
É isso ai galera, #ficadica.
"Esta dica te ajudou de alguma forma?" Então ajude outras pessoas compartilhando este conteúdo com seus amigos! =)
Até a próxima.
Comentários

Paulo Cesar
12 de Outubro de 2015 - 01:20

Mauricio Programador
Olá Paulo,
O sistema de comentários aqui do Blog não permite códigos inteiros de paginas então ele bloqueou o código que você mandou.
Mande só o erro ou a dúvida para que eu possa lhe ajudar.
Abraço.
19 de Outubro de 2015 - 15:47

adailton
24 de Abril de 2015 - 22:41

Mauricio Programador
Olá Adailton,
O que acontece ali e que o $row é um array e você não esta informando a posição do mesmo que você quer seja exibida.
Tente assim:
var mensagem = "<?php echo "<td>" . $row[0]['nome'] . "</td>";?>";
Abraço.
28 de Abril de 2015 - 10:12

adailton
caro mauricio sera que posso usar esse sistema em um ajax por exemplo tenho um banco de dados e tenho um php que faz um insert no banco de dados a cada 5 minutos pra gravar posicao x e y de uma variavel.
exemplo, um cadastro em php e um login em php e uma pagina que pega o login nome e posicao x e y do jogador e atualiza uma imagem com as posicoes.
isso e um jogo mutiplayer que tenho com html5 js. e queria saber se tem como rodar html5 dentro de um arquivo php.
07 de Abril de 2015 - 15:05

Mauricio Programador
Olá Adailton,
você pode sim fazer o insert via Ajax.
Independe da versão do HTML o PHP irá funcionar perfeitamente.
abraço.
08 de Abril de 2015 - 09:31

adailton
05 de Abril de 2015 - 20:56

Mauricio Programador
Ola Adailton,
Este código esta sendo executado em um arquivos PHP.
Códigos em PHP foram criados para ser executados em arquivos com extensão .php.
Por isso o bom seria não usar o código PHP dentro de um arquivo JS, o bom seria rever esta necessidade.
abraço.
06 de Abril de 2015 - 09:39

Edson Linhares
24 de Novembro de 2014 - 09:56

Mauricio Programador
Olá Edson,
Da algum erro? Esta linha faz o que? Coloque mais detalhes do que você quer fazer.
abraço.
25 de Novembro de 2014 - 08:49

Renato
23 de Outubro de 2014 - 14:33

Mauricio Programador
Olá Renato,
Estranho, o seu arquivo esta rodando direto no localhost? o mesmo ta com extensão .php?
Aguardo.
Abraço.
24 de Outubro de 2014 - 09:13

Willians
25 de Setembro de 2014 - 13:04

Victor Freitas
24 de Setembro de 2014 - 14:08

Mauricio Programador
Olá Victor,
O padrão do PHP e ser executado dentro de arquivos .php, porém diz ai o que você quer fazer, pode ser que tenha outra maneira mais "correta" de se fazer.
Abraço.
25 de Setembro de 2014 - 09:46

Leonardo
22 de Agosto de 2014 - 16:59

Mauricio Programador
Olá Leonardo,
não sei qual a sua intenção, porém se quiser chamar uma função do PHP depois de um intervalo de tempo, basta usar sleep.
Veja este post: Atrasar Execução do Código PHP
Se não for isso posta ai.
Abraço.
23 de Agosto de 2014 - 11:45

Alex
17 de Julho de 2014 - 09:53

Mauricio Programador
Olá Alex,
na verdade este tipo de comparação não irá funcionar porque o PHP e interpretado no servidor, ja o JavaScript no navegador, isso significa que o valor da variável $decisao nunca terá o valor que foi passado pelo javascript.
Mas pelo que eu entendi que você quer fazer e pegar a resposta e fazer uma ação, faz isso direto no javascript, veja o exemplo:
decisao = confirm("Tem certeza que deseja fechar?");
if (decisao){
return true;
}else {
return false;
}
Abraço.
17 de Julho de 2014 - 10:25

Ricardo
24 de Junho de 2014 - 11:43

Mauricio Programador
Olá Ricardo,
Você terá que usar o método de retorno, e isso vai depender de qual biblioteca você esta usando. Mas se seria algo do tipo:
ajax.responseText;
Abraço.
25 de Junho de 2014 - 12:27

Ederson
24 de Maio de 2014 - 21:23

Mauricio Programador
Olá Ederson,
ele funciona desta forma também:
alert("<?php echo $msg;?>");
Porém o conteúdo da variável do PHP já tem que estar definido antes de carregar o Javascript.
Abraço.
26 de Maio de 2014 - 10:47

Leandro Santos
23 de Maio de 2014 - 13:10

Mauricio Programador
Olá Leandro,
por ele estar em um arquivo diferente não tem importância, e nos seu caso você nem precisa usar o PHP, usando so javascript você pode pegar o valor do campo e atribuir na variável.
Para pegar o valor de um campo com javascript use:
document.getElementById("NOME DO CAMPOS").value
Abraço.
23 de Maio de 2014 - 14:27

Leandro Santos
Boa tarde, MaurÃcio.
Segui a sua dica, porém quando dou um "alert" na variável, retorna que ela está indefinida e a função deixou de funcionar.
26 de Maio de 2014 - 10:56

Mauricio Programador
Verifique se tem algum valor dentro do campos, e se você esta criando a variável de forma correta.
Abraço.
26 de Maio de 2014 - 10:57

MaurÃcio
23 de Novembro de 2013 - 22:42

Mauricio Programador
Olá xará,
desculpe pela demora hehehehe.
Já tem um post aqui no blog sobre isso como passar variável do javascript para o PHP, dai fica bem fácil adaptar.
espero que ajude qualquer coisa post aÃ.
abraço.
25 de Novembro de 2013 - 15:31

Bruno Santos
25 de Outubro de 2013 - 01:48

Mauricio Programador
Olá Bruno,
é possÃvel sim, ficaria desta forma:
<script type="text/javascript">
var variaveljs = 'Mauricio Programador';
</script>
<?php
$variavelphp = "<script>document.write(variaveljs)</script>";
echo $variavelphp;
?>
É um ótimo post esta sua dúvida, vou criar para ficar documentado.
Obrigado pelo comentário, espero ter ajudado grande abraço.
25 de Outubro de 2013 - 09:53

Junior Bezerra
06 de Outubro de 2013 - 22:09

Mauricio Programador
Olá Junior,
não entendi muito a sua pergunta. Pelo que entendi você quer abrir uma janela com jquery e pegar os dados com PHP.
Se for isso vai depender de como você esta usando o jquery, se puro ou com algum plugin.
Geralmente com os Plugins eles oferecem funções que você informa os dados que quer passar como parâmetro. Ex.: $.post('janela.php',{nome: 'Mauricio'}.
Abraço.
07 de Outubro de 2013 - 09:43

Thales Cardarelli Zanetti
Muito bom... Voce sabe me dizer por exemplo como que uma variavel em php recebe um valor do usuario ??
Ex: Qual a sua idade ?? (o usuario tem que digitar o valor e esse valor ser salvo na variavel criada)
Muito obrigado pela ajuda... Abrss
05 de Outubro de 2013 - 11:34

Mauricio Programador
Olá Thales,
o PHP usa basicamente dois métodos para receber dados do usuário um é o $_GET e o outro é o $_POST.
Você deve criar um formulário em HTML onde o usuário irá digitar a idade é a partir dai é só enviar para uma página do PHP que irá pegar estes dados é atribuir este valor digitado a uma variável.
Ex.:
$idade = $_POST['campo_formulario'];
Espero ter ajudando, grande Abraço.
06 de Outubro de 2013 - 12:58

Thales Cardarelli Zanetti
Muito obrigado pelo esclarecimento, Mauricio... Sou novo no Php e em programação. Vou testar o formulario aqui agora.. Obrigado mesmo e um bom dia...
07 de Outubro de 2013 - 11:11

Mauricio Programador
Claro, amigo precisando estamos aqui hehehehehe.
grande abraço.
07 de Outubro de 2013 - 11:12

Jardel
03 de Outubro de 2013 - 14:52