Per evitare di mettere un controllo su una variabile integer passata tramite form si può dichiarare precedentemente la variabile come intera?
In questo modo sid dovrebbe recuperare solo interi.. no?Codice PHP:$sid = 0;
@$sid = $_GET['sid'];
Printable View
Per evitare di mettere un controllo su una variabile integer passata tramite form si può dichiarare precedentemente la variabile come intera?
In questo modo sid dovrebbe recuperare solo interi.. no?Codice PHP:$sid = 0;
@$sid = $_GET['sid'];
Tu vuoi essere sicuro che $sid sia una variabile numerica?
Usa questo:
ereg("[0-9]",$sid);
Spero di aver capito la richiesta.
Ciaooo!!!!!!!
Si, questo che hai scritto tu è il controllo, io dicevo se si riusciva ad evitarlo dichiarando la variabile intera.. così qualsiasi altro codice (tipo sql injection) non poteva essere raccolta. Ma nel php non so, è molto flessibile, per questo ho chiesto.
Ah, la negazione del tuo controllo come si fa?
Per la negazione basta mettere il punto esclamativo:
!ereg(blabla);
Invece per la tua richiesta, eccoti la risposta:
settype($sid, "integer");
Ciaoooooo!!!!!!!
oppure con un semplice casting
mavericckCodice PHP:$sid = (int) $_GET['sid'];
Grazie 1000 a tutti e due :wink:
anche questo modo va bene:
Codice PHP:$sid = intval($_GET['sid']);
Visto che risolto, chiudo.Citazione:
Originalmente inviato da harryweb