Decodificar variable de URL PHP codificada vía Javascript?

  • Autor Autor JoseCuevas
  • Fecha de inicio Fecha de inicio
JoseCuevas

JoseCuevas

Iota
Verificación en dos pasos activada
Verificado por Whatsapp
Hola betas buenas noches.

Tengo un problema, necesito pasar un par de variables a travéz de la URL donde contendrán simbolos como "'+}¿{[] y demás, mi pregunta es cómo puedo pasarla a travéz de la url y captarla con un $_GET en PHP...

Hasta ahorita eh visto encode con javascript, pero no sé cómo esa codificación decodificarla obteniendola con el metodo $_GET

La url la paso si o si a travéz de un redirect vía javascript algo como window.location.replace("http://stackoverflow.com?variable1=+{}¿"'&variable2=45¿'ñ");´

pero esas variables, cómo las puedo recibir y decodificarlas para insertarlas en la base de datos? de igual manera creo que lo más conveniente sería dejar el texto codificado en la base de datos y al momento de mostrar dicha información al usuario decodificarla, ¿Alguna sugerencia?

Gracias a todos!!
 
Podría ser así:

index.html

PHP:
<!DOCTYPE HTML>
<html>
<head>
  <title>Untitled</title>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<meta content="IE=edge" http-equiv="X-UA-Compatible" />
<meta content="width=device-width, initial-scale=1" name="viewport" />
  <script>
    var myOtherUrl = "http://localhost/otro/test.php?variable1=" +  encodeURIComponent("+{}¿'") + "&variable2=" + encodeURIComponent("45¿'ñ ");
    document.write('<a href="'+ myOtherUrl +'">Texto</a>');
  </script>
</head>
<body>
</body>
</html>

test.php
PHP:
<?php
echo "Recibida variable1 en get = " . $_GET['variable1'] . "</br>";
echo "Recibidas variable2 en get = " . $_GET['variable2'] . "</br>" . "</br>";

$enocode = urlencode($_GET['variable1']);
$enocode1 = urlencode($_GET['variable2']);
echo "Encode variable1 para database = " . $enocode . "</br>";
echo "Encode variable2 para database = " . $enocode1 . "</br>". "</br>";

echo "Decode variable1 desde database = " . urldecode($enocode) . "</br>";
echo "Decode variable2 desde database = " . urldecode($enocode1) . "</br>";
?>

sshot-1-55d454a.jpg

Podría funcionar así o también como dice el compañero de arriba con html_entity_decode
 

Gracias lo probaré!

Podría ser así:

index.html

PHP:
<!DOCTYPE HTML>
<html>
<head>
  <title>Untitled</title>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<meta content="IE=edge" http-equiv="X-UA-Compatible" />
<meta content="width=device-width, initial-scale=1" name="viewport" />
  <script>
    var myOtherUrl = "http://localhost/otro/test.php?variable1=" +  encodeURIComponent("+{}¿'") + "&variable2=" + encodeURIComponent("45¿'ñ ");
    document.write('<a href="'+ myOtherUrl +'">Texto</a>');
  </script>
</head>
<body>
</body>
</html>

test.php
PHP:
<?php
echo "Recibida variable1 en get = " . $_GET['variable1'] . "</br>";
echo "Recibidas variable2 en get = " . $_GET['variable2'] . "</br>" . "</br>";

$enocode = urlencode($_GET['variable1']);
$enocode1 = urlencode($_GET['variable2']);
echo "Encode variable1 para database = " . $enocode . "</br>";
echo "Encode variable2 para database = " . $enocode1 . "</br>". "</br>";

echo "Decode variable1 desde database = " . urldecode($enocode) . "</br>";
echo "Decode variable2 desde database = " . urldecode($enocode1) . "</br>";
?>

sshot-1-55d454a.jpg

Podría funcionar así o también como dice el compañero de arriba con html_entity_decode

Muy buen ejemplo! Espero no solo me sirva a mi sino a los demás compañeros gracias :angeles:
 
Atrás
Arriba