在PHP中计算MySQL表的值

时间:2012-10-20 21:29:57

标签: php mysql

我有一个包含用户和打印页面的表格,如下所示:

user  |  pages
---------------
maria |  5

helen |  6

maria |  7

nick  |  10

nick  |  3

nick  |  6

我想要计算有多少页打印过尼克,海伦,玛丽亚。 我尝试了一些方法,但是我没有得到正确数量的页面。

有什么想法吗?


直到现在我将csv文件保存在具有复制/粘贴的特定文件夹中,现在我试图向用户提供自己上传的选项。这是我的HTML和PHP文件的一部分。

 <form action="data.php" method="post" enctype="multipart/form-data">
                <label for="file">   </label>
                <input  type="file" name="file" id="file" />
          </br></br>      <input type="submit" value="Load data file into database" 
            name="button1"/>
    </form>    

data.php

<?php
$file_name=$_FILES["file"]["name"];
$file_type=$_FILES["file"]["type"]; echo"type:".$file_type;
$destination="D:\xampp\mysql\data\readcsvdb";
if($file_type!='text/csv')
                        {
                                echo "Please the input file should be a .csv file";
                        }
else
move_upload_file($file_name,$destination);

connect_db(); 

//Fill the table log of readcsv database with the csv's data

$q="LOAD DATA 
                 INFILE '$file_name' INTO TABLE log 
                 FIELDS TERMINATED BY ',' 
                 LINES TERMINATED BY \"\n\" 
                 IGNORE 2 LINES
                 (time,user,pages,copies,
                 printer,doc_name,client,paper_size,language,height,width,duplex,grayscale,size)";
                mysql_query($q) or die(mysql_error());

---------------------我收到一个错误:  类型:application / vnd.ms-excel请输入文件应该是.csv文件文件'D:\ xampp \ mysql \ data \ readcsvdb \ papercut-print-log-2012-10.csv'找不到(错误代码:2)< / p>

2 个答案:

答案 0 :(得分:4)

试试这个

SELECT user, SUM(pages) AS totalPages 
FROM users 
GROUP BY user

SQLFiddle Demo

答案 1 :(得分:0)

使用Group By语句,如下所示:

SELECT *, COUNT(*) FROM users GROUP BY user