Edit: OP alan tipi varchar değil, bir sayı olduğunu yakın zamana kadar ortaya koymamıştır. Bu nedenle, s / o bu kullanmanız gerekir:
mysql_query("SELECT * FROM student WHERE IDNO='"
. mysql_escape_string($_GET['id']) . "'");
Kuşaklar için, benim özgün cevabı:
Eğer yapabileceğini, bu durumda bir onaltılık sayı, ayrıştırmak için çalışıyoruz gibi görünüyor:
hexdec($_GET['id'])
(int)x PHP aldığımda okuma durdu yani intval(x), hangi varsayılan 10 tabanına göre. Numaranız 03A43, açıkça, 10 tabanına değil aynıdır için A. Ayrıca intval(x, 16) onaltılık sayı ayrıştırmak için söyleyebiliriz, ama bir dize olarak sonuç kullanarak konum beri, hexdec bir ufacık küçücük biraz daha hızlı muhtemelen.
Dikkatli alakasız bir not olarak, birçok programlama dilleri yerine ondalık daha 0 gibi sekizlik ile başlayan numaralar tedavi. Derseniz $myvar = 031;, $myvar 25 kurulacaktır. Bu, aynı zamanda JavaScript yanı sıra parseInt işlevi için de geçerlidir. PHP, (int) ve intval varsayılan 10 tabanına beri, intval('031') olacak 31. İkinci parametre, 0, intval tabanını yeniden algılamaya söyler Ancak, intval('031', 0) 25 olacaktır.