pasar variables php a Javascript

Escrita por , 11 August 2012

Alguna veces deseamos pasar el contenido de una variable PHP y pasársela a Javascript, lo mas importante para que funcione bien es cuidar el sintax de tu código…

Por ejemplo querés pasara un array de PHP a Javascript para que este este definido en tu Javascript..
Bueno les voy a enseñar que no es tan difícil..
Considera que tu servidor tiene que parsear PHP para que estos ejemplos pueden funcionar..

Ejemplo, pasemos una cadena de palabras de PHP y un array de PHP a javascript:

<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
	<script type="text/javaScript">
	    // creamos nuestra PHP variable.
		<?php $phpvar    = "este es mi contenido en php un string.." ?>

		// y la metemos ahora en una variable Javascript.
        var jsvar  = '<?php echo $phpvar; ?>';

		// creemos un array de php y pasemos el contenido en una variable javascript.
		<?php $phparray  = array('un string', 1, 0.358); ?>

		// creamos ahora una array en javascript.
		var jsarray      = [];

		// pasemos nuestro array de php a nuestra array de javascript.
		<?php
		    for($i=0; $i < count($phparray); $i++ ){
		        echo 'jsarray['.$i.'] = "'.$phparray[$i].'";';
		    }
		?>

		window.onload = function(){
			alert(jsvar);
			alert(jsarray);
		}
	</script>
</head>
<body>
</body>
</html>

Déjenme explica un poco..

// creamos nuestra php variable.
		<?php $phpvar    = "este es mi contenido en php un string.." ?>

		// y la metemos ahora en una variable Javascript.
        var jsvar  = '<?php echo $phpvar; ?>';

En este pedazo , creamos nuestra variable PHP y le asignamos una cadena de palabras o (string) a esta.. ya creado pasamos a declarar una variable Javascript..

Al mismo utilizamos usamos una comillas simple y después usamos la tag de PHP i el echo para printear su contenido y asignarlo a la variable Javascript serramos la variable Javascript con la misma clase de comillas simple..

Ahora dejen explico el ejemplo de array.

// creemos un array de php y pasemos el contenido en una variable javascript.
		<?php $phparray  = array('un string', 1, 0.358); ?>

		// creamos ahora una array en javascript.
		var jsarray      = [];

		// pasemos nuestro array de php a nuestra array de javascript.
		<?php
		    for($i=0; $i < count($phparray); $i++ ){
		        echo 'jsarray['.$i.'] = "'.$phparray[$i].'";';
		    }
		?>

Empezamos asignando una array a una variable PHP, enseguida declaramos nuestra variable Javascript como array, enseguida procesamos el array de php con un loop por cada elemento que tenga el array de php, el loop lo asignara al array de Javascript, observa cuidadosamente que aquí utilice el echo de PHP y printee el nombre del array en Javascript, en el indice de el array de Javascript asigne el valor de $i de PHP, i el valor de el array PHP lo asigne también a el array de Javascript..

observa también como empece con la comillas dobles al dar el valor de el index de PHP a el array de Javascript si ellas no estuvieran Javascript me daría un error y no se asignaría propiamente el array de Javascript..

bueno espero le sirve a alguien, ya que a mi me costo algo entenderle.

Categorias : Guias para la Web,php y algo mas,Un poco de html Etiquetas :

Trackbacks & Pingbacks
  • Trackback by twitter retweets on 24 July 2014 @ 17:37 pm
Comentarios
6 September 2012

muy bueno el tutorial muchas gracias por tus tutoriales, me han servido de mucho en mi estudios

Echo by guestbook
13 October 2012

Muy buen aporte!!

Echo by Julio
13 October 2012

gracias a ti por comentar.

Echo by UTAN
3 May 2013

Necesito hace lo mismo para una variable Fecha en php pasarla a javascript pero con el formato que maneja el newDate. Te agradezco mucho si me puedes colaborar.

Echo by Oscar
24 June 2013

lol que facil era, pero no se me habia ocurrido, genial tu post 😉

Echo by Alan
30 August 2013

Estan bien de la cabeza?? no entienden la diferente de cliente-servidor?

Echo by Anonimo
30 August 2013

Hola,

El cliente eres tu o para ser mas preciso tu explorador, este corre el Javascript que tenga la pagina, pero php no es igual es parseado o corre por el servidor que te lo manda en forma que explorador que tengas lo entienda…
Por esto se dice , servidor y cliente , javascript es para el cliente y php en el servidor, espero se entienda la explicacion.

Echo by UTAN
9 October 2013

Disculpa tengo un problema, necesito saver si existe un dato en my bd desde php am despues guardar la validacion dentro de una variable o es mi problema como lo aria por q despues quiero utilizar esa variable con la validacion en un script para asi poder desabilitar un boton siempre y cuando exista un dato en my bd …. de antemano grasias …

Echo by Hola
13 December 2013

Y como lo tengo que guardar como php?, js o html?

Echo by Danny Robert
14 December 2013

Hola,

Tienes que hacer el documento en php, amenos que tengas tu server que parsee php en html..

gracias.

Echo by UTAN
16 March 2014

<?php
9
for($i=0; $i
Eso va en el php o en el javascript?
Disculpa mi ignorancia.
Muy bueno el aporte, me hace falta…

Echo by JR
17 March 2014

Hola,

Ese es php, pero lo puedes usar en Javascript.

var variable_javascript = "<?php echo "esto es php"; ?>";
Echo by UTAN
19 April 2014

muy bueno el tutorial , estas dicas son las que salvan el pellejo de la gente gracias

Echo by Anibal
14 May 2014

Muy buen aporte, Gracias

Echo by ALMC INTERNET
6 July 2014

Gran codigo.

Tengo una duda ya que no soy muy experimentado.

Tengo un fichero PHP que tras hacer varias operaciones con cadenas guarda los distintos resultados en un ARRAY.

Desde un fichero HTML usando javascript podria leer y copiarme el contenido del array?

La idea es hacer lo que haces en el ejemplo pero con dos ficheros diferentes.

Gracias.

Echo by sunday
6 July 2014

Hola,

Si se puede, lo que debes hacer es una llamada Ajax al documento php que crea el susodicho Array , lo conviertes en JSON y lo usas en el callback de el método Ajax,

usas jQuery.parseJSON(); si lo usas y este te da un objeto que puedes utiliza..

Echo by UTAN
2 December 2014

hola amigo gracias de antemano yo solo quiero compartir el valor de una variable en dos funciones ese es mi ejemplo

function nombre($id){ //el ID lo traigo con un post trabajo en modelo vista controlador
// aqui hago todas las consultas que necesito

}
function consulta(){
//aqui quiero volver a usar el ID que traigo para acer mas consultas como lo puedo hacer ?? gracias de antemano

}

Echo by Oscar Daniel
16 December 2014

Hola,

Disculpa que responda tan tarde..
No entendí bien la pregunta pero te are un ejemplo hasta donde entendí.

function nombre($id){ //el ID lo traigo con un post trabajo en modelo vista controlador
    // aqui hago todas las consultas que necesito
    echo "<script>consulta(". $id ."); </script>";

}
function consulta( id ){
    //aquí quiero volver a usar el ID que traigo para acer mas consultas como lo puedo hacer ?? gracias de antemano
   // as algo con el id
}

Como veras a la funcion javascript consulta le das un argumento lo cual lo pasastes en la funcion php nombre..

Claro esta si entendí que es lo que quieres hacer.

Echo by UTAN
Deja tu comentario

(requerido)

(requerido)