Page 1 of 1

SQL Server Query (being echo'd)

Posted: Mon Feb 08, 2010 4:37 am
by Jay87
I am using the following code:

Code: Select all

[color=#FF0000]LINE89:[/color] $slamettoday = mssql_query("SELECT COUNT(c.id) as slatoday FROM faultlog as c INNER JOIN contact ON c.contid=contact.id WHERE logged>DATEADD(DAY,-1,GETDATE()) AND response<datediff(hour,logged,(SELECT TOP 1 date FROM notes WHERE id=c.id AND id_prefix=c.id_prefix ORDER BY date ASC))". $db);
 
[color=#FF0000]LINE93:[/color] $slamettoday=mssql_result($query,0,'slatoday');
In the table where i want to echo the count i call it by:

Code: Select all

<?echo $slamettoday .  "%" ?>
I get the following errors:

PHP Warning: mssql_query() [<a href='function.mssql-query'>function.mssql-query</a>]: Query failed in /var/www/helpdesk-dev/statistics.php on line 89

PHP Notice: PHP Warning: mssql_result(): supplied argument is not a valid MS SQL-result resource in /var/www/helpdesk-dev/statistics.php on line 93, referer: http://helpdesk:90/statistics.php

---------------------------------------------------------------------------------------------------------

If i run the query bit in SQL Server:

Code: Select all

SELECT COUNT(c.id) as slatoday FROM faultlog as c INNER JOIN contact ON c.contid=contact.id WHERE logged>DATEADD(DAY,-1,GETDATE()) AND response<datediff(hour,logged,(SELECT TOP 1 date FROM notes WHERE id=c.id AND id_prefix=c.id_prefix ORDER BY date ASC))
It works fine.....

But i can't get it to work in my table...

Any ideas?

Re: SQL Server Query (being echo'd)

Posted: Mon Feb 08, 2010 9:39 am
by infolock
It's because in your mssql_query statement, you are appending $db to the end of the query. so your code looks like this:

Code: Select all

 
$slamettoday = mssql_query("SELECT COUNT(c.id) as slatoday FROM faultlog as c INNER JOIN contact ON c.contid=contact.id WHERE logged>DATEADD(DAY,-1,GETDATE()) AND response<datediff(hour,logged,(SELECT TOP 1 date FROM notes WHERE id=c.id AND id_prefix=c.id_prefix ORDER BY date ASC))". $db);
 
when it should be this:

Code: Select all

 
$slamettoday = mssql_query("SELECT COUNT(c.id) as slatoday FROM faultlog as c INNER JOIN contact ON c.contid=contact.id WHERE logged>DATEADD(DAY,-1,GETDATE()) AND response<datediff(hour,logged,(SELECT TOP 1 date FROM notes WHERE id=c.id AND id_prefix=c.id_prefix ORDER BY date ASC))", $db);
 
Notice we use a comma instead of a period for $db. This is, of course, assuming that $db is your link connection to mssql.