[ Index ]
 

Code source de Zen Cart E-Commerce Shopping Cart 1.3.7.1

Accédez au Source d'autres logiciels libres

Classes | Fonctions | Variables | Constantes | Tables

title

Body

[fermer]

/admin/ -> stats_products_purchased.php (source)

   1  <?php
   2  //

   3  // +----------------------------------------------------------------------+

   4  // |zen-cart Open Source E-commerce                                       |

   5  // +----------------------------------------------------------------------+

   6  // | Copyright (c) 2003 The zen-cart developers                           |

   7  // |                                                                      |

   8  // | http://www.zen-cart.com/index.php                                    |

   9  // |                                                                      |

  10  // | Portions Copyright (c) 2003 osCommerce                               |

  11  // +----------------------------------------------------------------------+

  12  // | This source file is subject to version 2.0 of the GPL license,       |

  13  // | that is bundled with this package in the file LICENSE, and is        |

  14  // | available through the world-wide-web at the following url:           |

  15  // | http://www.zen-cart.com/license/2_0.txt.                             |

  16  // | If you did not receive a copy of the zen-cart license and are unable |

  17  // | to obtain it through the world-wide-web, please send a note to       |

  18  // | license@zen-cart.com so we can mail you a copy immediately.          |

  19  // +----------------------------------------------------------------------+

  20  //  $Id: stats_products_purchased.php 4790 2006-10-18 22:57:46Z ajeh $

  21  //

  22  
  23    require ('includes/application_top.php');
  24  
  25    $products_filter = (isset($_GET['products_filter']) ? $_GET['products_filter'] : $products_filter);
  26    $products_filter = str_replace(' ', ',', $products_filter);
  27    $products_filter = str_replace(',,', ',', $products_filter);
  28    $products_filter_name_model = (isset($_GET['products_filter_name_model']) ? $_GET['products_filter_name_model'] : $products_filter_name_model);
  29  ?>
  30  <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
  31  <html <?php echo HTML_PARAMS; ?>>
  32  <head>
  33  <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
  34  <title><?php echo TITLE; ?></title>
  35  <link rel="stylesheet" type="text/css" href="includes/stylesheet.css">
  36  <link rel="stylesheet" type="text/css" media="print" href="includes/stylesheet_print.css">
  37  <link rel="stylesheet" type="text/css" href="includes/cssjsmenuhover.css" media="all" id="hoverJS">
  38  <script language="javascript" src="includes/menu.js"></script>
  39  <script language="javascript" src="includes/general.js"></script>
  40  <script type="text/javascript">
  41    <!--
  42    function init()
  43    {
  44      cssjsmenu('navbar');
  45      if (document.getElementById)
  46      {
  47        var kill = document.getElementById('hoverJS');
  48        kill.disabled = true;
  49      }
  50    }
  51    // -->

  52  </script>
  53  </head>
  54  <body onload="init()">
  55  <!-- header //-->
  56  <div class="header-area">
  57  <?php require(DIR_WS_INCLUDES . 'header.php'); ?>
  58  </div>
  59  <!-- header_eof //-->
  60  
  61  <!-- body //-->
  62  <table border="0" width="100%" cellspacing="2" cellpadding="2">
  63    <tr>
  64  <!-- body_text //-->
  65      <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
  66        <tr>
  67          <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
  68            <tr>
  69              <td class="pageHeading"><?php echo HEADING_TITLE; ?></td>
  70              <td class="pageHeading" align="right"><?php echo zen_draw_separator('pixel_trans.gif', 1, HEADING_IMAGE_HEIGHT); ?></td>
  71              <td class="smallText" align="right">
  72  <?php
  73  // show reset search

  74      echo zen_draw_form('search', FILENAME_STATS_PRODUCTS_PURCHASED, '', 'get', '', true);
  75      echo HEADING_TITLE_SEARCH_DETAIL_REPORTS . ' ' . zen_draw_input_field('products_filter') . zen_hide_session_id();
  76      if (isset($products_filter) && zen_not_null($products_filter)) {
  77        $products_filter = zen_db_input(zen_db_prepare_input($products_filter));
  78        echo '<br/ >' . TEXT_INFO_SEARCH_DETAIL_FILTER . $products_filter;
  79      }
  80      if (isset($products_filter) && zen_not_null($products_filter)) {
  81        echo '<br/ >' . '<a href="' . zen_href_link(FILENAME_STATS_PRODUCTS_PURCHASED, '', 'NONSSL') . '">' . zen_image_button('button_reset.gif', IMAGE_RESET) . '</a>&nbsp;&nbsp;';
  82      } else {
  83        echo '</form>';
  84      }
  85  
  86  // show reset search

  87      echo zen_draw_form('search', FILENAME_STATS_PRODUCTS_PURCHASED, '', 'get', '', true);
  88      echo '<br/ >' . HEADING_TITLE_SEARCH_DETAIL_REPORTS_NAME_MODEL . ' ' . zen_draw_input_field('products_filter_name_model') . zen_hide_session_id();
  89      if (isset($products_filter_name_model) && zen_not_null($products_filter_name_model)) {
  90        $products_filter_name_model = zen_db_input(zen_db_prepare_input($products_filter_name_model));
  91        echo '<br/ >' . TEXT_INFO_SEARCH_DETAIL_FILTER . zen_db_prepare_input($products_filter_name_model);
  92      }
  93      if (isset($products_filter_name_model) && zen_not_null($products_filter_name_model)) {
  94        echo '<br/ >' . '<a href="' . zen_href_link(FILENAME_STATS_PRODUCTS_PURCHASED, '', 'NONSSL') . '">' . zen_image_button('button_reset.gif', IMAGE_RESET) . '</a>&nbsp;&nbsp;';
  95      } else {
  96        echo '</form>';
  97      }
  98  ?>
  99              </td>
 100            </tr>
 101          </table></td>
 102        </tr>
 103  <?php
 104  if ($products_filter > 0 or $products_filter_name_model != '') {
 105    if ($products_filter > 0) {
 106      // by products_id

 107      $chk_orders_products_query = "SELECT o.customers_id, op.orders_id, op.products_id, op.products_quantity, op.products_name, op.products_model,
 108                                    o.customers_name, o.customers_company, o.customers_email_address, o.date_purchased
 109                                    FROM " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op
 110                                    WHERE op.products_id in (" . $products_filter . ")
 111                                    and op.orders_id = o.orders_id
 112                                    ORDER by op.products_id, o.date_purchased DESC";
 113    } else {
 114      // by products name or model

 115      $chk_orders_products_query = "SELECT o.customers_id, op.orders_id, op.products_id, op.products_quantity, op.products_name, op.products_model,
 116                                    o.customers_name, o.customers_company, o.customers_email_address, o.date_purchased
 117                                    FROM " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op
 118                                    WHERE ((op.products_model LIKE '%" . $products_filter_name_model . "%')
 119                                    or (op.products_name LIKE '%" . $products_filter_name_model . "%'))
 120                                    and op.orders_id = o.orders_id
 121                                    ORDER by op.products_id, o.date_purchased DESC";
 122  }
 123    $chk_orders_products_query_numrows='';
 124    $chk_orders_products_split = new splitPageResults($_GET['page'], MAX_DISPLAY_SEARCH_RESULTS_REPORTS, $chk_orders_products_query, $chk_orders_products_query_numrows);
 125  
 126    $rows = 0;
 127    $chk_orders_products = $db->Execute($chk_orders_products_query);
 128  ?>
 129        <tr>
 130          <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
 131            <tr>
 132              <td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
 133                <tr class="dataTableHeadingRow">
 134                  <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_CUSTOMERS_ID; ?></td>
 135                  <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_ORDERS_ID; ?></td>
 136                  <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_ORDERS_DATE_PURCHASED; ?></td>
 137                  <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_CUSTOMERS_INFO; ?></td>
 138                  <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_PRODUCTS_QUANTITY; ?>&nbsp;</td>
 139                  <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_PRODUCTS_NAME; ?>&nbsp;</td>
 140                  <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_PRODUCTS_MODEL; ?>&nbsp;</td>
 141                </tr>
 142  
 143  <?php
 144    if ($chk_orders_products->EOF) {
 145  ?>
 146                <tr class="dataTableRowSelectedBot">
 147                  <td colspan="7" class="dataTableContent" align="center"><?php echo NONE; ?></td>
 148                </tr>
 149  <?php } ?>
 150  <?php
 151    while (!$chk_orders_products->EOF) {
 152      $rows++;
 153  
 154      if (strlen($rows) < 2) {
 155        $rows = '0' . $rows;
 156      }
 157      if ($products_filter != '') {
 158      // products_id

 159        $cPath = zen_get_product_path($products_filter);
 160      } else {
 161      // products_name or products_model

 162        $cPath = zen_get_product_path($chk_orders_products->fields['products_id']);
 163      }
 164  ?>
 165                <tr class="dataTableRow">
 166                  <td class="dataTableContent"><?php echo '<a href="' . zen_href_link(FILENAME_CUSTOMERS, zen_get_all_get_params(array('cID', 'action', 'page', 'products_filter')) . 'cID=' . $chk_orders_products->fields['customers_id'] . '&action=edit', 'NONSSL') . '">' . $chk_orders_products->fields['customers_id'] . '</a>'; ?></td>
 167                  <td class="dataTableContent"><?php echo '<a href="' . zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action', 'page', 'products_filter')) . 'oID=' . $chk_orders_products->fields['orders_id'] . '&action=edit', 'NONSSL') . '">' . $chk_orders_products->fields['orders_id'] . '</a>'; ?></td>
 168                  <td class="dataTableContent"><?php echo zen_date_short($chk_orders_products->fields['date_purchased']); ?></td>
 169                  <td class="dataTableContent"><?php echo $chk_orders_products->fields['customers_name'] . ($chk_orders_products->fields['customers_company'] !='' ? '<br />' . $chk_orders_products->fields['customers_company'] : '') . '<br />' . $chk_orders_products->fields['customers_email_address']; ?></td>
 170                  <td class="dataTableContent" align="center"><?php echo $chk_orders_products->fields['products_quantity']; ?>&nbsp;</td>
 171                  <td class="dataTableContent" align="center"><?php echo '<a href="' . zen_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $products_filter) . '">' . $chk_orders_products->fields['products_name'] . '</a>'; ?>&nbsp;</td>
 172                  <td class="dataTableContent" align="center"><?php echo $chk_orders_products->fields['products_model']; ?>&nbsp;</td>
 173  
 174                </tr>
 175  <?php
 176      $chk_orders_products->MoveNext();
 177    }
 178  ?>
 179              </table></td>
 180            </tr>
 181            <tr>
 182              <td colspan="3"><table border="0" width="100%" cellspacing="0" cellpadding="2">
 183                <tr>
 184                  <td class="smallText" valign="top"><?php echo $chk_orders_products_split->display_count($chk_orders_products_query_numrows, MAX_DISPLAY_SEARCH_RESULTS_REPORTS, $_GET['page'], TEXT_DISPLAY_NUMBER_OF_PRODUCTS); ?></td>
 185                  <td class="smallText" align="right"><?php echo $chk_orders_products_split->display_links($chk_orders_products_query_numrows, MAX_DISPLAY_SEARCH_RESULTS_REPORTS, MAX_DISPLAY_PAGE_LINKS, $_GET['page'], zen_get_all_get_params(array('page', 'x', 'y'))); ?>&nbsp;</td>
 186                </tr>
 187              </table></td>
 188            </tr>
 189  
 190  <?php
 191  } else {
 192  // all products by name and quantity display

 193  ?>
 194        <tr>
 195          <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
 196            <tr>
 197              <td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
 198                <tr class="dataTableHeadingRow">
 199                  <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_NUMBER; ?></td>
 200                  <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_PRODUCTS; ?></td>
 201                  <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_PURCHASED; ?>&nbsp;</td>
 202                </tr>
 203  <?php
 204    if (isset($_GET['page']) && ($_GET['page'] > 1)) $rows = $_GET['page'] * MAX_DISPLAY_SEARCH_RESULTS_REPORTS - MAX_DISPLAY_SEARCH_RESULTS_REPORTS;
 205  // The following OLD query only considers the "products_ordered" value from the products table.

 206  // Thus this older query is somewhat deprecated

 207    $products_query_raw = "select p.products_id, p.products_ordered, pd.products_name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where pd.products_id = p.products_id and pd.language_id = '" . $_SESSION['languages_id']. "' and p.products_ordered > 0 group by pd.products_id order by p.products_ordered DESC, pd.products_name";
 208  
 209  // The new query uses real order info from the orders_products table, and is theoretically more accurate.

 210  // To use this newer query, remove the "1" from the following line ($products_query_raw1 becomes $products_query_raw )

 211      $products_query_raw1 =
 212        "select sum(op.products_quantity) as products_ordered, pd.products_name, op.products_id
 213        from ".TABLE_ORDERS_PRODUCTS." op
 214        left join " . TABLE_PRODUCTS_DESCRIPTION . " pd
 215          on (pd.products_id = op.products_id )
 216        where pd.language_id = '" . $_SESSION['languages_id']. "'
 217        group by pd.products_id
 218        order by products_ordered DESC, products_name";
 219  
 220    $products_query_numrows='';
 221    $products_split = new splitPageResults($_GET['page'], MAX_DISPLAY_SEARCH_RESULTS_REPORTS, $products_query_raw, $products_query_numrows);
 222  
 223    $rows = 0;
 224    $products = $db->Execute($products_query_raw);
 225    while (!$products->EOF) {
 226      $rows++;
 227  
 228      if (strlen($rows) < 2) {
 229        $rows = '0' . $rows;
 230      }
 231      $cPath = zen_get_product_path($products->fields['products_id']);
 232  ?>
 233                <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href='<?php echo zen_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $products->fields['products_id'] . '&page='); ?>'">
 234                  <td class="dataTableContent" align="right"><?php echo '<a href="' . zen_href_link(FILENAME_STATS_PRODUCTS_PURCHASED, zen_get_all_get_params(array('oID', 'action', 'page', 'products_filter')) . 'products_filter=' . $products->fields['products_id']) . '">' . $products->fields['products_id'] . '</a>'; ?>&nbsp;&nbsp;</td>
 235                  <td class="dataTableContent"><?php echo '<a href="' . zen_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $products->fields['products_id'] . '&page=') . '">' . $products->fields['products_name'] . '</a>'; ?></td>
 236                  <td class="dataTableContent" align="center"><?php echo $products->fields['products_ordered']; ?>&nbsp;</td>
 237                </tr>
 238  <?php
 239      $products->MoveNext();
 240    }
 241  ?>
 242              </table></td>
 243            </tr>
 244            <tr>
 245              <td colspan="3"><table border="0" width="100%" cellspacing="0" cellpadding="2">
 246                <tr>
 247                  <td class="smallText" valign="top"><?php echo $products_split->display_count($products_query_numrows, MAX_DISPLAY_SEARCH_RESULTS_REPORTS, $_GET['page'], TEXT_DISPLAY_NUMBER_OF_PRODUCTS); ?></td>
 248                  <td class="smallText" align="right"><?php echo $products_split->display_links($products_query_numrows, MAX_DISPLAY_SEARCH_RESULTS_REPORTS, MAX_DISPLAY_PAGE_LINKS, $_GET['page']); ?>&nbsp;</td>
 249                </tr>
 250              </table></td>
 251            </tr>
 252  <?php
 253  } // $products_filter > 0

 254  ?>
 255          </table></td>
 256        </tr>
 257      </table></td>
 258  <!-- body_text_eof //-->
 259    </tr>
 260  </table>
 261  <!-- body_eof //-->
 262  
 263  <!-- footer //-->
 264  <div class="footer-area">
 265  <?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
 266  </div>
 267  <!-- footer_eof //-->
 268  </body>
 269  </html>
 270  <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>


Généré le : Mon Nov 26 16:45:43 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics