WHERE…Auser_id…A=…A'".@$_SESSION['user_id']."'"
@ tells PHP to ignore the error message and not to display it in the browser. So if $_SESSION['user_id'] is not set, then it usually returns an error message (or warning message telling you that the variable is not declared.) but @ prevents it to be displayed.
This would be usefull for any mysql functions such as @mysql_connect(), @(), @mysql_fetch_array(), and so on.
For more info, check out the PHP Manual at PHP.net.