2012-10-19 87 views
-1

我有一个mysql查询返回多列中的值的总和。查询是正确的,当我将它包含在主页面中时,一切正常。但是,当我在另一个 页面中包含查询并返回总和并在主页面中打印它不工作时,该问题开始。php mysql查询功能不工作

下面是主要的页面调用:

require('totals.php'); 
$res_easyhint_total=easyhint_totals($currentpid); 

print $res_easyhint_total; 
//The above is contained in a while loop and current pid gets updated each time. 

功能页面:

function easyhint_totals($currentpid){ 
require('connect.php'); 
$sql_easyhint_total = "SELECT sum(Coffee+Gift+Cools+Affection+Patience+Anger+EHignore) from whyangry.posts where Pid=$currentpid"; 
$res_easyhint_total=mysql_query($sql_easyhint_total,$con); 
$res_easyhint_total=mysql_fetch_array($res_easyhint_total); 
$res_easyhint_total=$res_easyhint_total[0]; 
return $res_easyhint_total; 
} 

我不明白是什么错误,请帮助。

+0

定义不工作...它会抛出一个错误?意外的结果?如果是这样,结果/预期结果是什么? – sachleen

+0

它没有给出任何结果。并且while循环卡在那里。 –

+1

首先,你不应该在函数中包含文件......或者在循环中,如果这就是你正在做的。 – sachleen

回答

0

你是否在connect.php中定义了任何函数?如果不尝试添加:

$res_easyhint_total=mysql_query($sql_easyhint_total,$con); 

if (mysql_errno() != 0) { 
    echo mysql_error(); 
} 

$res_easyhint_total=mysql_fetch_array($res_easyhint_total); 
0

您是否检查过新页面的结果本身?我的意思是说,如果你试图从新页面打印结果,就像你从主页面尝试一样。然后还有一件事需要说明,即包含这两个文件的路径。尝试从新页面传递任何其他变量到主页面,并检查新文件是否包含正确。

如果您能够从主页上的新页面访问其他变量,并且它只是不返回该函数的结果。尝试在主页面上添加connect.php并检查它。

0

您之前是否包含了文件“connect.php”?

if([email protected]_once('connect.php')) { 
    // include connect.php 
} 
0

检查您的连接字符串返回正确的链接标识,并检查日志是否也有像警告MySQL的任何错误或警告:请求mysql_query()[2002]没有这样的文件或目录(试图连接通过unix:///var/run/mysql/mysql.sock)。在这种情况下,尝试设置正确的套接字文件位置。