Come ottenere il valore della variabile get o post sul caricamento della pagina utilizzando JavaScript?Ottieni valore GET O POST variabile usando JavaScript?
risposta
Non è possibile ottenere il valore delle variabili POST utilizzando Javascript, sebbene sia possibile inserirlo nel documento quando si elabora la richiesta sul server.
<script type="text/javascript">
window.some_variable = '<?=$_POST['some_value']?>'; // That's for a string
</script>
variabili GET sono disponibili attraverso il window.location.href
, e alcuni quadri hanno anche methods pronto per analizzare loro.
Invece di scrivere direttamente il valore del POST, potresti usare 'json_encode' –
@Ken Keenan: hai ragione, grazie! E anche tu puoi fare qualche convalida prima di quello. Stavo solo cercando di mostrare il mio punto. –
Non eseguire alcun tipo di codifica o convalida significa che il codice come scritto è [vulnerabile a XSS] (https://www.owasp.org/index.php/XSS). – Quentin
È possibile ottenere solo gli argomenti URI con JavaScript.
// get query arguments
var $_GET = {},
args = location.search.substr(1).split(/&/);
for (var i=0; i<args.length; ++i) {
var tmp = args[i].split(/=/);
if (tmp[0] != "") {
$_GET[decodeURIComponent(tmp[0])] = decodeURIComponent(tmp.slice(1).join("").replace("+", " "));
}
}
quando ho avuto il problema che ho salvato il valore in un input nascosto:
nel corpo HTML:
<body>
<?php
if (isset($_POST['Id'])){
$fid= $_POST['Id'];
}
?>
... poi mettere l'ingresso nascosto sulla pagina e scrivere il valore di $ fid con php echo
<input type=hidden id ="fid" name=fid value="<?php echo $fid ?>">
poi a $ (document) .ready (function() {
012.var postId=document.getElementById("fid").value;
quindi ho ottenuto il mio parametro URL nascosto in php an js.
Questo non è sicuro. Permette a chiunque di inserire codice HTML arbitrario nella tua applicazione (può postare "" e uscire dall'attributo) –
Con un piccolo php è molto facile. parte
HTML:
<input type="text" name="some_name">
JavaScript
<script type="text/javascript">
some_variable = "<?php echo $_POST['some_name']?>";
</script>
Questo è totalmente insicuro: se qualcuno pubblica qualcosa contenente "" "allora può seguirlo con JavaScript arbitrario. –
Si noti inoltre che l'escape di '" 'non è sufficiente, è necessario evitare anche'. Si consiglia l'uso di 'json_encode' (che ora esegue il escape della barra rovesciata) –
// Captura datos usando metodo GET en la url colocar index.html?hola=chao
const $_GET = {};
const args = location.search.substr(1).split(/&/);
for (let i=0; i<args.length; ++i) {
const tmp = args[i].split(/=/);
if (tmp[0] != "") {
$_GET[decodeURIComponent(tmp[0])] = decodeURIComponent(tmp.slice(1).join("").replace("+", " "));
console.log(`>>${$_GET['hola']}`);
}//::END if
}//::END for
Potrebbe essere necessario qualche spiegazione per essere utile .. –
/**
* getGET: [Funcion que captura las variables pasados por GET]
* @Implementacion [pagina.html?id=10&pos=3]
* @param {[const ]} loc [capturamos la url]
* @return {[array]} get [Devuelve un array de clave=>valor]
*/
const getGET =() => {
const loc = document.location.href;
// si existe el interrogante
if(loc.indexOf('?')>0){
// cogemos la parte de la url que hay despues del interrogante
const getString = loc.split('?')[1];
// obtenemos un array con cada clave=valor
const GET = getString.split('&');
const get = {};
// recorremos todo el array de valores
for(let i = 0, l = GET.length; i < l; i++){
const tmp = GET[i].split('=');
get[tmp[0]] = unescape(decodeURI(tmp[1]));
}//::END for
return get;
}//::END if
}//::END getGET
/**
* [DOMContentLoaded]
* @param {[const]} valores [Cogemos los valores pasados por get]
* @return {[document.write]}
*/
document.addEventListener('DOMContentLoaded',() => {
const valores=getGET();
if(valores){
// hacemos un bucle para pasar por cada indice del array de valores
for(const index in valores){
document.write(`<br>clave: ${index} - valor: ${valores[index]}`);
}//::END for
}else{
// no se ha recibido ningun parametro por GET
document.write("<br>No se ha recibido ningún parámetro");
}//::END if
});//::END DOMContentLoaded
Ecco la mia risp er per questo dato una stringa returnURL che è come http://host.com/?param1=abc¶m2=cde. È piuttosto semplice visto che sto iniziando con JavaScript (questo è in realtà parte del mio primo programma in assoluto in JS), e rendendolo più semplice da capire piuttosto che complicato.
Note
- No sanità mentale di controllo dei valori
- Proprio l'output alla console - si vorrà memorizzarli in un array o qualcosa
questo è solo per GET, POST e non
var paramindex = returnURL.indexOf('?'); if (paramindex > 0) { var paramstring = returnURL.split('?')[1]; while (paramindex > 0) { paramindex = paramstring.indexOf('='); if (paramindex > 0) { var parkey = paramstring.substr(0,paramindex); console.log(parkey) paramstring = paramstring.substr(paramindex+1) // +1 to strip out the = } paramindex = paramstring.indexOf('&'); if (paramindex > 0) { var parvalue = paramstring.substr(0,paramindex); console.log(parvalue) paramstring = paramstring.substr(paramindex+1) // +1 to strip out the & } else { // we're at the end of the URL var parvalue = paramstring console.log(parvalue) break; } } }
- 1. REST - ottieni un numero casuale GET o POST?
- 2. ottieni il valore della variabile javascript in jsp scriptlet
- 3. Passo Variabile Javascript per PHP POST
- 4. Funzione/risorsa RESTful: GET o POST?
- 5. Django Admin: valori pre-popolamento da POST o GET?
- 6. Ottenere una variabile POST
- 7. jQuery: ottieni JSON tramite ajax, ma con POST anziché GET
- 8. binding POST/GET nella racchetta
- 9. Come HTTP GET o POST con Matlab o Octave?
- 10. Unity GET/POST Wrapper
- 11. Stampa variabile in un cruscotto CDE usando html o javascript
- 12. Rails POST, PUT, GET
- 13. Ottieni valore pulsante radio con Javascript
- 14. Ottieni una variabile dal parametro url utilizzando Javascript
- 15. Ottieni il nome della variabile. javascript "reflection"
- 16. jquery $ .post() vs $ .get()
- 17. Lettura PHP variabile 'get' che può essere impostata o meno
- 18. Ottieni il valore di input usando angularjs
- 19. Rubino GET/POST con OpenURI o net/http
- 20. Ottieni il valore dall'array usando l'array intero per la posizione javascript
- 21. Ottieni la variabile dal file PHP usando JQuery/AJAX
- 22. Https POST/GET con Qml/Qt
- 23. Ottieni il valore della casella multiselect usando jQuery o JS puro
- 24. Richiesta POST HTTP vuota o richiesta GET per generare un valore casuale tramite un'API HTTP
- 25. jQuery ajax() vs get()/post()
- 26. Parametri JSP, GET e POST
- 27. Parametri Rails da GET/POST
- 28. Spring MVC GET/reindirizzare/POST
- 29. HTML GET e metodi POST
- 30. Documentazione Get/Post Parameters con Doxygen o PHPDoc
correlati http://stackoverflow.com/questions/1409013/how-to-read-the-post-req uest-parameters-using-javascript –