-1

我想从数据库中获取数字并将它们用于总和。我真的不知道如何开始,但我放弃了。当我直接从数据库中回显一个数字时,我得到了一个错误,这对我的自学没有帮助。我不知道我做错了什么,但我认为这是一个简单的问题。这是代码:

<?php

session_start();

$connection = mysql_connect("mysql15.000webhost.com", "a4987634_quiz", "**********")
or die (mysql_error());

mysql_select_db("a4987634_quiz", $connection)
or die (mysql_error());

$username = $_SESSION['username'];
$password = $_SESSION['password'];

$q1 = mysql_query ("SELECT 'q1' FROM users WHERE username='$username'");
$q2 = mysql_query ("SELECT 'q2' FROM users WHERE username='$username'");
$q3 = mysql_query ("SELECT 'q3' FROM users WHERE username='$username'");
$q4 = mysql_query ("SELECT 'q4' FROM users WHERE username='$username'");
$q5 = mysql_query ("SELECT 'q5' FROM users WHERE username='$username'");

$result = $q1 + $q2 + $q3 + $q4 + $q5 ;

echo $result ;

?>

谢谢。

4

3 回答 3

3

假设每个用户名只有一行用户,则:

Select q1 + q2 + q3 + q4 + q5 as total from users where username = '$username'

如果有多个,那么您可能想要

Select Sum(q1 + q2 + q3 + q4 + q5) as total from users where username = '$username'
于 2012-10-28T13:40:48.073 回答
1

我认为您可以在这里使用简单的运算符-

SELECT (q1+q2+q3+q4+q5) AS total FROM users WHERE username='$username'
于 2012-10-28T13:37:50.927 回答
0

您不能直接添加结果集,而是从每个结果集中读取特定的字段值。
将从每个结果集中读取的字段值相加以求和,然后回显结果。

示例

$result = 0;
$resultSetsArray = array( $q1, $q2, $q3, $q4, $q5 );  

foreach( $resultSetsArray as $rs ) {  
  while( $row = mysql_fetch_array( $rs ) ) {  
    $result = $result + $row[ 1 ];  
    break; // while  
  } // while rs  
} // for each  

echo "result : " . $result;

您有更好的方法来汇总数据库表列的列值。
看来您需要更多地学习和练习 PHP 和 MySQL。

于 2012-10-28T14:12:17.193 回答