MSSQL only allows one HRESULT open per connection. If you have a query with a server side cursor open any subsequent queries using that connection will fail.
(PHP 4, PHP 5, PECL odbtp >= 1.1.1)
mssql_free_result — Free result memory
mssql_free_result() only needs to be called if you are worried about using too much memory while your script is running. All result memory will automatically be freed when the script ends. You may call mssql_free_result() with the result identifier as an argument and the associated result memory will be freed.
The result resource that is being freed. This result comes from a call to mssql_query().
TRUE on success or
FALSE on failure.
Example #1 mssql_free_result() example
// Select some data from a table
$query = mssql_query('SELECT * FROM [php].[dbo].[persons]', $link);
// Handle query result here
// When we're done we free the result by calling
// mssql_free_result like so: