Ver Mensaje Individual
  #2 (permalink)  
Antiguo 13/03/2012, 08:00
Avatar de Naahuel
Naahuel
 
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 9 meses
Puntos: 192
Respuesta: Obtener Variable de PHP en un Archivo JS

Hay varias formas de realizar esta tarea. La más fácil es así:

Código HTML:
Ver original
  1. <?php
  2.     $URL="http://mipagina.com";
  3. ?>
  4. <script type="text/javascript">
  5.     var URL = "<?=$URL; ?>";
  6. <script type='text/javascript' src='js/funciones.js'></script>

Es decir, tenés un archivo PHP con tu enmarcado HTML. Al principio obtenés la variable que necesitás (por GET, de una base de datos o lo que sea). Declarás la variable en un bloque de javascript y recién ahí incluís el archivo funciones.js el cual ya tendrá la variable URL disponible. ¿Se entiende?

Otra opción es crear un archivo PHP de esta forma:

Código PHP:
Ver original
  1. <?php
  2.     header("content-type: application/x-javascript");
  3.     $URL = $_REQUEST['URL'];
  4. ?>
  5. //aca incluís todo tu JS
  6. var URL = "<? echo $URL; ?>";
  7. var directory = options && options.directory ? options.directory : URL + '/public/js/jquery/images';

Ese sería tu archivo funciones.js, pero tendrías que llamarlo funciones.php e incluirlo así:

Código HTML:
Ver original
  1. <script type="text/javascript" src="js/funciones.php?URL=http://www.ejemplo.com"></script>

El URL acá también la podés pasar dinámicamente, similar al primer ejemplo que te mostré, sólo que sin usar un bloque <script>:

Código HTML:
Ver original
  1. <?php
  2.     $URL="http://mipagina.com";
  3. ?>
  4. <script type="text/javascript" src="js/funciones.php?URL=<?=$URL;?>"></script>

En fin, hay varias formas de lograr eso, espero al menos haber aclarado algo :P

-edit-
Tené en cuenta que no he realizado chequeos (para ver si es un URL, si tiene un / al final, etc.) ni tampoco codifiqué la viariable que se pasa por el URL, para mantener los ejemplos sencillos. Esto es importante. Con PHP tenés que usar urlencode() para pasar la variable y urldecode() para obtenerla.
__________________
nahueljose.com.ar