我遇到了一些奇怪的事情,我不知道为什么会这样!
我有一个像这样的网址:
http://mysite.com/users/USER_ID
此用户 ID 可能是INT
并且可能是STRING
,类似于 Facebook 页面地址,如果您使用页面 ID 调用页面,它会加载它,您也可以使用页面名称(例如“my_page_name”)调用它
所以想象一个用户,它的 ID 是1
,它的地址是my_name
在我的 php 页面上我需要查询数据库,但在此之前我需要知道要查看哪一列,id
或者page_name
所以我提出了这个解决方案:
<?php
$id = $_GET['id'];
$id_inted = intval($_GET['id']);
if($id == $id_inted){
// The column which I should look into is id
$column = 'id';
}else{
// The column which I should look into is page_name
$column = 'page_name';
}
$query = mysql_qyery(SELECT * FROM members WHERE $column = '$id');
?>
所以我测试了它,但结果很奇怪,即使我调用了这个 URL:
http://mysite.com/users/page_name
有时候是这样的:$column = 'id';
我打开了一个新的测试页面:
<?php
$real_string = 'abcdefg';
$string_inted = intval($real_string);
echo "Real String is: " . $real_string . "<br />";
echo "The same string as int is: " . $string_inted . "<br />";
if($real_string == $string_inted) echo "Weird!"; else echo "Fine...";
?>
结果:
Real String is: abcdefg
The same string as int is: 0
Weird!
为什么会这样?
提前致谢。