Cómo pasar variables Javascript a PHP

Cómo pasar variables Javascript a PHP

Hace pocos días leía en un Blog sobre Diseño web una propuesta de debate sobre qué lenguaje de programación tiene más futuro, leer esto
En primer lugar una reflexión, y es que recordemos que Javascript se ejecuta del lado del cliente mientras que PHP lo hace del lado del servidor, por lo que realmente lo que estamos haciendo con la primera técnica que se presenta a continuación es imprimir en pantalla la variable en “formato texto”.

En el segundo y tercer ejemplo veremos como guardar realmente los datos en la variable del lado del servidor, para ello existen varias formas de hacerlo, como por ejemplo a través de INPUT, AJAX, guardándolo en una base de datos MYSQL o en una variable de Sesión. De este modo conseguiremos pasar variables Javascript a PHP.

javascript php
Copyright: 123RF

  • MÉTODO 1: paso de variable “en modo texto”

    <script> var variableJS = “contenido de la variable javascript”; </script>
    
    <?php
    $PHPvariable = “<script> document.write(variableJS) </script>”;
    echo “PHPvariable = “.$PHPvariable;
    ?>

    Este último código puede resultar “engañoso”, ya que no es PHP quien imprime realmente el valor de la variable sino de nuevo javascript, aunque es cierto que en ocasiones muy concretas puede resultarnos de gran utilidad.
    Por lo tanto PHP no almacena el valor, sino que es realmente Javascript quien lo interpreta en nuestro navegador web, ya que PHP se ejecutó en tiempo mucho antes en el lado del servidor web.

    La solución entonces pasa porque el evento javascript lance una petición web a PHP que provoque un click a una página PHP, y que acabe pasando los parámetros por POST o GET asignándolos así a las variables correspondientes.

  • MÉTODO 2: paso de variable JS a PHP a través de un form
    El servidor web en los casos anteriores no puede almacenar la variable de ninguna de las maneras mientras el código es ejecutado en el lado del cliente, por lo tanto lo solucionamos de la siguiente manera:

    <?php
    echo "<script language='javascript'>
    	var la_cantidad;
    	la_cantidad=prompt('Introduce la cantidad',1);
         </script> ";
     
    //Ya tenemos capturada la variable con javascript
     
    echo "<form action=$_SERVER[PHP_SELF] method=post name=enviar>
                  <input type=hidden name=var_php></form>";
     
    echo "<script language='javascript'>
                  document.enviar.var_php.value=la_cantidad;
                  document.enviar.submit();
    </script>";
    ?>

    Con estas líneas de código el archivo php se llama a sí mismo, pasando a través del formulario la variable javascript ‘la_cantidad’.

  • MÉTODO 3: paso de la variable JS a PHP a través de una variable de Sesión

    jQuery('#div_session_write').load('session_write.php?session_name=new_value');
    In session_write.php file:
    
    <?
    session_start();
    
    if (isset($_GET['session_name'])) {$_SESSION['session_name'] = $_GET['session_name'];}
    ?>

Otro artículo interesante que os puede interesar es Cómo insertar html en php.

comenta

Si te gustó este artículo o te sirvió de ayuda por favor compártelo
Un saludo,
Óscar / DevService
Por Óscar Carrillo