2016-01-28 10 views
6

Voglio ottenere una variabile PHP da Javascript. così io uso l'aiuto di HTMLHTML in Javascript in PHP. È pericoloso?

<input type="text" value="" name="number1"id="number"style="display:none;"> 

E poi io do il valore da JavaScript

var c = (Math.floor((Math.random() * 8) + 5)).toString(); 

document.getElementById("number").value = c; 

E finalmente prenderlo in PHP

$number =$_POST["number1"]; 

È questo pericoloso e avere possibilità di bug? Grazie

+1

Sì, va bene. Basta fare validazioni serveride. Qualsiasi dato dal clientide è pericoloso. Puoi usare '' invece di 'display: none;' comunque. –

+1

Dipende da come stai memorizzando e presentando l'input dell'utente. Se la memorizzazione, le iniezioni SQL sono una possibilità, se la presentazione di XSS iniezione è una possibilità. – Darren

+2

@Faisal. mai sentito parlare di quel tipo di input. Nuove conoscenze per me :) – Elbert

risposta

3

Il codice potrebbe essere al sicuro, dipende da ciò che si fa con i dati che riceve.

Ricordare sempre che non ci si può mai fidare dell'utente. È possibile utilizzare le istruzioni if ​​per verificare se l'input dell'utente è valido.

1

Convalida in PHP è molto più facile per te.

Vedi PHP 5 Form Validation a W3Schools

+0

è tutto basato sul codice javascript che mi ha fatto usare questo tipo di modo. Ma controllerò i riferimenti. grazie – Elbert

+0

Se vuoi inserire, non disinfettare gli script html/rischiosi. Basta disinfettarli in uscita. Ma se stai usando il database, semplicemente disinfetti alcune iniezioni SQL nell'input, non in output. –

1

tenta di utilizzare sotto codice. È possibile utilizzare PHP all'interno javascript

<script type="text/javascript"> 
    var jvalue = 'this is javascript value'; 
    <?php $abc = "<script>document.write(jvalue)</script>"?> 
</script> 

<?php echo 'php_'.$abc;?>