2011-07-07 86 views
0
INSERT INTO [dbp_mod].[dbo].[Logs] (UserID, DB_Type, DB_Name, TableName, FieldName, OldValue, NewValue, SearchFields, SearchValues, Action, ActionIP, ActionTime) VALUES (1, 'DBF', 'E:\dbf\dbtest.dbf', 'E:\dbf\dbtest.dbf', 'f3', '8', '10', 'f1', '1', 'Edited', '192.168.2.124', GetDate()); 

此查询有什么问题?它在Management Studio中运行正常,但产生与PHP此查询有什么问题?

Warning: mssql_query(): supplied argument is not a valid MS SQL-Link resource in错误

$query = "INSERT INTO [dbo].[Logs] (UserID, DB_Type, DB_Name, TableName, FieldName, OldValue, NewValue, SearchFields, SearchValues, Action, ActionIP, ActionTime) 
     VALUES ($data[UserID], '$data[DB_Type]', '$data[DB_Name]', '$data[TableName]', '$data[FieldName]', '$data[OldValue]', '$data[NewValue]', '$data[SearchFields]', '$data[SearchValues]', '$data[Action]', '$data[ActionIP]', GetDate()); "; 

    echo "<br>$query"; 
    if(!mssql_query($query, $db)){ 
     $successFlag = FALSE; 
    } else { 
     $successFlag = TRUE; 
    } 

我敢肯定,我在这两个选择分贝$db

INSERT INTO [dbp_mod].[dbo].[Logs] (UserID, DB_Type, DB_Name, TableName, FieldName, OldValue, NewValue, SearchFields, SearchValues, Action, ActionIP, ActionTime) VALUES (1, '', '', '', '', '', '', '', '', 'Logged in ', '192.168.2.124', GetDate()); 

没有工作PHP和管理工作室

+0

警告:您的代码易受sql注入攻击。 –

+1

与db的连接存在问题。这将是'$ db'变量。 – thetaiko

回答

0

错误与您的数据库连接有关,而不是您的SQL。检查数据库句柄,看看问题是什么。

什么方法可用来验证数据库句柄是“好”?