Tengo este archivo html que estoy usando para encriptar una cadena a hash sha1. Recibo la cadena como "1 | 2 | 3" de una función de javascript (no he mostrado la función a continuación), y necesito reemplazar el | con - y luego cifrar la cadena modificada. Aquí está el código que he construido hasta ahora:
<!DOCTYPE html> <html> <body> <script type="text/javascript"> var test; var value; var message = "1 | 2 | 3"; test = message.split(' | '); value = "<?php $final = test[0] . " - " . test[1] . " - " . test[2]; echo sha1($final);?>"; alert(value); </script> </body> </html> Me enteré de publicar el valor en otro archivo PHP usando un formulario HTML y acceder a él a través $_POST / $_GET , pero mi aplicación no permite 2 archivos; por lo tanto, estoy tratando de combinarlo todo en un archivo html ...
PHP tiene una función de encriptación SHA1 incorporada, pero javascript no: la variable de value en el código anterior está rota; ¿Cómo paso una variable a PHP desde JS y de PHP a JS? Nuevamente, solo quiero modificar (cifrarla) una variable JS usando PHP y luego establecer el valor de la variable modificada de PHP en una nueva variable JS. ¿Qué tengo que hacer? Por favor guía :)
No puedes acceder a la variable javascript así. PHP es ejecutado por el servidor y JavaScript por el cliente. Puede crear una función ajax en JS que llame a su script PHP.
Tutorial: http://www.w3schools.com/ajax/
JS
function loadDoc() { var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (xhttp.readyState == 4 && xhttp.status == 200) { xhttp.responseText // return from your PHP; } }; xhttp.open("GET", "yourphp.php?variable="+yourjsvariable, true); xhttp.send(); }PHP
<?PHP return $_GET["variable"]; ?>