I'm encountering something weird and I don't know why it is happening!
I have a URL like:
http://mysite.com/users/USER_ID
this user id could be INT and could be STRING, it's something like Facebook page addresses, if you call the page with page ID it loads it, also you could call it with page name like "my_page_name"
So imagine a user which it's ID is 1 and it's address is my_name
On my php page I need query db, but before that I need to know which column to look, id or page_name
So I came with this solution:
<?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');
?>
So I tested it, but the results is weird, even if I call this URL:
http://mysite.com/users/page_name
This happens: $column = 'id';
I opened a new test page:
<?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...";
?>
and the results:
Real String is: abcdefg
The same string as int is: 0
Weird!
Why this is happening?
Thanks in advance.