2010-08-16 9 views
5

tengo este código HTML en mi:Ver URL de la página web actual (dinámico) en HTML

<h3 id="left">Lorem Ipsum </h3> 

       <h3 id="right">[Current URL Here]</h3> 

que desea mostrar (dinámicamente) la URL actual dentro de las etiquetas <h3>. He estado tratando de resolverlo por unos días, pero en realidad soy un desarrollador de dispositivos móviles, no un desarrollador de HTML, por lo que es difícil. Necesito esto para una aplicación en la que estoy trabajando, así que por favor, ve con cuidado conmigo :)

Gracias de antemano.

Respuesta

9
document.getElementById('right').innerHTML = window.location.href; 
+0

me adelantó :) :) – Sphvn

+0

....... misma – vol7ron

2

Bueno, simplemente no se puede hacer en HTML puro.

Con Javascript, se puede ir con

<h3 id="right"> 
<script type="text/javascript"> 
document.write(location.href); 
</script> 
</h3> 

De lo contrario, si usted está solicitando una página en el servidor, se debe más bien se ha hecho en ese país.

+2

JavaScript de MooGoo es una manera más limpia de manejar esto. –

0

el código PHP para conseguir el URL completa de la página actual es la siguiente

<?php 

    $protocol = $_SERVER['HTTPS'] == 'on' ? 'https' : 'http'; 

    echo $protocol.'://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; 
?> 

Reference

si desea utilizar Javascript a utilizar el método sugerido por @MooGoo

uso completo de ese el script es el siguiente

<SCRIPT LANGUAGE="JavaScript">   
    document.getElementById('right').innerHTML = window.location.href;  
</SCRIPT> 

use th es después de que declaró/definida <h3 id="right">[Current URL Here]</h3>

Esperanza útiles

+0

-1 por no mencionar a un newb que deberían generar '$ _SERVER ['REQUEST_URI']' a través de 'htmlspecialchars'. Consulte aquí: http: //stackoverflow.com/questions/3446459/what-is-the-benefit-of-using-the-super-global-serverphp-self-in-php/3446566#3446566. Se aplican los mismos principios. – aaronasterling

2

Si quisiera hacerlo en PHP, que es un poco más complicado:

$url = !empty($_SERVER['HTTPS']) ? 'https://' : 'http://'; 
$url .= $_SERVER['HTTP_HOST'] . htmlspecialchars($_SERVER['REQUEST_URI']); 

Como aronasterling puntos fuera, es necesario desinfectar $_SERVER['REQUEST_URI'] a prevenir XSS.

-1

Mientras que el código JavaScript son lo que es más común, también se podría utilizar las inclusiones de servidor:

<h3 id="right"> 
    <!--#echo var="SERVER_NAME" -->/<!--#echo var="DOCUMENT_URI" --> 
</h3> 
  • en lugar de SERVER_NAME puede probar HTTP_HOST
  • en lugar de DOCUMENT_URI puede probar REQUEST_URI; se incluye la cadena de consulta, el otro no
+0

-1 ver mi comentario en cada otra respuesta en este hilo que involucra php. – aaronasterling

+0

@aaronasterling: lee la diferencia entre 'DOCUMENT_URI' y' REQUEST_URI'. Si el asker quería evitar XSS, debería usar el apropiado. Si asker está en una intranet o está usando la página para uso personal, entonces XSS no es una amenaza. – vol7ron

+0

Esta es la razón por la cual las personas deberían tener que enviar un currículum antes de otorgar la capacidad de voto – vol7ron

-1

código PHP:

function curPageURL() { 
$pageURL = 'http'; 
if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";} 
$pageURL .= "://"; 
if ($_SERVER["SERVER_PORT"] != "80") { 
    $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; 
} else { 
    $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]; 
} 
return $pageURL; 
} 

<h3 id="right">echo curPageURL();</h3> 
+0

-1 ver mi comentario srinivas answer. – aaronasterling

0
<script type="text/javascript"> 
var segments = window.location.pathname.split('/'); 
var toDelete = []; 
for (var i = 0; i < segments.length; i++) { 
    if (segments[i].length < 1) { 
     toDelete.push(i); 
    } 
} 
for (var i = 0; i < toDelete.length; i++) { 
    segments.splice(i, 1); 
} 
var filename = segments[segments.length - 1]; 
console.log(filename); 
document.write(filename); 
</script> 
Cuestiones relacionadas