mysql - Putting select count data into a Fetch Array Query row PHP -


i have script retrieves users same "dealership_id" "users" table, works fine. each user within these records has id (users_sales_guild_id) on table called "sales_list".

what trying list total amount of sales each user has "sales_list" table next respective user

currently prints logged in user's amount (john smith , value of 5), , not each individual amount, going wrong?

how look

name         |   position          |    sid    |  total sales |   john smith   |   sales consultant  |    23434  |  5           |   details jane smith   |   sales consultant  |    34234  |  9           |   details john chan    |   sales manager     |    43423  |  3           |   details jane chan    |   sales consultant  |    23344  |  7           |   details 

how looks

name         |   position          |    sid    |  total sales |   john smith   |   sales consultant  |    23434  |  5           |   details jane smith   |   sales consultant  |    34234  |  5           |   details john chan    |   sales manager     |    43423  |  5           |   details jane chan    |   sales consultant  |    23344  |  5           |   details 

php code

$query = "select `users_id`, `users_email` , `users_sales_guild_id` , `users_dealer_code_id` ,        `users_first_name` , `users_surname` , `users_dealer_name` , `users_type` ,  date_format(`registration_date`, '%d-%m-%y')        `dr`        `users`         `dealership_id` = '".$_session['dealership_id']."'       , (users_type = 'sales manager' or users_type = 'sales consultant')       order registration_date desc";  $result = mysql_query("select * sales_list sales_list.users_sales_guild_id ='" . $_session['users_sales_guild_id'] . "'"); $num_rows = mysql_num_rows($result);  $result = @mysql_query ($query); // run query.  echo '<table> <tr> <td align="center">name</td> <td align="center">position</td> <td align="center">id</td> <td align="center">total sales</td> <td align="center"></td> </tr>';  $bg = '#ffffff'; // set background color. while ($row = mysql_fetch_array($result, mysql_assoc)) {  $bg = ($bg=='#e1e3e6' ? '#cdcdcf' : '#e1e3e6'); // switch background color.    echo '<tr bgcolor="' . $bg . '">';  echo  '<td align="center">' . $row['users_first_name'] . ' ' . $row['users_surname'] . '    </td>'; echo  '<td align="center">' . $row['users_type'] . '</td>'; echo  '<td align="center">' . $row['users_sales_guild_id'] . '</td>';  echo  '<td align="center">' . $num_rows . '</td>';  echo  '<td align="center"><a href="sm-sales-ind-2.php?smid=' . $row['users_id'] . '">details</td>';  } echo '</table>';  mysql_free_result ($result); // free resources.  mysql_close(); // close database connection. ?> 

you'd have add subquery or join sql, similar to:

join:

select name, count(sales_list.*) salesman join sales_list on salesman.id = sales_list.salesman_id group salesman.id 

subquery:

select   name,   (select count(*) sales_list     salesmen.id = sales_list.salesman.id) sales_count salesmen 

then can use $row['sales_count'] in output

the $num_rows refers number of rows returned, doesn't contain specific counts of sales per user


Comments

Popular posts from this blog

python - Subclassed QStyledItemDelegate ignores Stylesheet -

java - HttpClient 3.1 Connection pooling vs HttpClient 4.3.2 -

SQL: Divide the sum of values in one table with the count of rows in another -