我已经查看了大量的代码和示例..这是一小段代码,但我似乎无法让它工作。
我有dbo.accounts,其中包含id,username,password,createtime ..
我有一个简单的表单,你输入用户名,我需要select查询来根据用户名返回ID。
$result = mssql_query('SELECT id FROM dbo.account WHERE name = $username');
dbo.gamemoney表只会插入一些硬编码信息,例如游戏中的硬币数量。
我的问题是,如果我使用ID = 123的查询,它可以工作,但是当我尝试使用用户名来获取dbo.accounts的id时,我什么也得不回来。
我知道它必须是小事,但我已经试着弄清楚这么多个小时,因为我老实说丢了..
谢谢你的时间, 克里斯
答案 0 :(得分:1)
由于$username
是字符串类型,因此必须将其括在引号中。
$result = mssql_query("SELECT id FROM dbo.account WHERE name = '$username'");
答案 1 :(得分:0)
作为一种更好的做法,建议使用try-catch方案,以便获得确切的错误日志。试试 -
$result = mssql_query('SELECT id FROM dbo.account WHERE name = "'.$username.'"') or die('MSSQL error: ' . mssql_get_last_message());
答案 2 :(得分:0)
感谢大家的帮助!
我能够让它运转起来。现在我会确保它是正确的方式。我忘了添加,
while($row = mssql_fetch_array($result)) {
$id = $row['id'];
$ip = $row['ip'];
}
这就是id为空的原因。我错过了一些代码。 克里斯