Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

need to change create account field to a dropdown


eric_jbdotcom

Recommended Posts

i want to add a dropdown box for people to select their referrer to the website.

 

i want to be able to add referrers to the database via admin panel

 

ive already added a referrers table in my db with

 

referrers_id (int) 11 auto increment

referrers_name (vars) 64

 

and set the referrers_id to PRIMARY

and referrers_name to IDX_REFERRERS_NAME

 

what code would i need to edit to get this to work

Link to comment
Share on other sites

I've found these codes so far from the countries dropdown:

 

tep_get_countries

in catalog/functions/general.php

 

////

// Returns an array with countries

// TABLES: countries

  function tep_get_countries($default = '') {

    $countries_array = array();

    if ($default) {

      $countries_array[] = array('id' => '',

                                'text' => $default);

    }

    $countries_query = tep_db_query("select countries_id, countries_name from " . TABLE_COUNTRIES . " order by countries_name");

    while ($countries = tep_db_fetch_array($countries_query)) {

      $countries_array[] = array('id' => $countries['countries_id'],

                                'text' => $countries['countries_name']);

    }

 

    return $countries_array;

  }

 

--------------------------------------------------------------------------------------

 

////

// Returns an array with countries

// TABLES: countries

  function tep_get_countries($countries_id = '', $with_iso_codes = false) {

    $countries_array = array();

    if (tep_not_null($countries_id)) {

      if ($with_iso_codes == true) {

        $countries = tep_db_query("select countries_name, countries_iso_code_2, countries_iso_code_3 from " . TABLE_COUNTRIES . " where countries_id = '" . (int)$countries_id . "' order by countries_name");

        $countries_values = tep_db_fetch_array($countries);

        $countries_array = array('countries_name' => $countries_values['countries_name'],

                                'countries_iso_code_2' => $countries_values['countries_iso_code_2'],

                                'countries_iso_code_3' => $countries_values['countries_iso_code_3']);

      } else {

        $countries = tep_db_query("select countries_name from " . TABLE_COUNTRIES . " where countries_id = '" . (int)$countries_id . "'");

        $countries_values = tep_db_fetch_array($countries);

        $countries_array = array('countries_name' => $countries_values['countries_name']);

      }

    } else {

      $countries = tep_db_query("select countries_id, countries_name from " . TABLE_COUNTRIES . " order by countries_name");

      while ($countries_values = tep_db_fetch_array($countries)) {

        $countries_array[] = array('countries_id' => $countries_values['countries_id'],

                                  'countries_name' => $countries_values['countries_name']);

      }

    }

 

    return $countries_array;

  }

 

--------------------------------------------------------------------------------------

 

////

// Alias function to tep_get_countries()

  function tep_get_country_name($country_id) {

    $country_array = tep_get_countries($country_id);

 

    return $country_array['countries_name'];

  }

 

tep_get_countries

in admin/functions/general.php

 

////

// Returns an array with countries

// TABLES: countries

  function tep_get_countries($default = '') {

    $countries_array = array();

    if ($default) {

      $countries_array[] = array('id' => '',

                                'text' => $default);

    }

    $countries_query = tep_db_query("select countries_id, countries_name from " . TABLE_COUNTRIES . " order by countries_name");

    while ($countries = tep_db_fetch_array($countries_query)) {

      $countries_array[] = array('id' => $countries['countries_id'],

                                'text' => $countries['countries_name']);

    }

 

    return $countries_array;

  }

 

--------------------------------------------------------------------------------------

 

////

// Alias function for Store configuration values in the Administration Tool

  function tep_cfg_pull_down_country_list($country_id) {

    return tep_draw_pull_down_menu('configuration_value', tep_get_countries(), $country_id);

  }

 

tep_get_country_name

in catalog/functions/general.php

  function tep_get_country_name($country_id) {

    $country_query = tep_db_query("select countries_name from " . TABLE_COUNTRIES . " where countries_id = '" . (int)$country_id . "'");

 

    if (!tep_db_num_rows($country_query)) {

      return $country_id;

    } else {

      $country = tep_db_fetch_array($country_query);

      return $country['countries_name'];

    }

  }

 

tep_get_country_list

in catalog/functions/html_output.php

 

////

// Creates a pull-down list of countries

  function tep_get_country_list($name, $selected = '', $parameters = '') {

    $countries_array = array(array('id' => '223', 'text' => 'United States'));

    $countries = tep_get_countries();

 

    for ($i=0, $n=sizeof($countries); $i<$n; $i++) {

      $countries_array[] = array('id' => $countries[$i]['countries_id'], 'text' => $countries[$i]['countries_name']);

    }

 

    return tep_draw_pull_down_menu($name, $countries_array, $selected, $parameters);

  }

 

the admin/countries.php file

 

<?php

/*

  $Id: countries.php,v 1.28 2003/06/29 22:50:51 hpdl Exp $

 

  osCommerce, Open Source E-Commerce Solutions

  http://www.oscommerce.com

 

  Copyright © 2003 osCommerce

 

  Released under the GNU General Public License

*/

 

  require('includes/application_top.php');

 

  $action = (isset($HTTP_GET_VARS['action']) ? $HTTP_GET_VARS['action'] : '');

 

  if (tep_not_null($action)) {

    switch ($action) {

      case 'insert':

        $countries_name = tep_db_prepare_input($HTTP_POST_VARS['countries_name']);

        $countries_iso_code_2 = tep_db_prepare_input($HTTP_POST_VARS['countries_iso_code_2']);

        $countries_iso_code_3 = tep_db_prepare_input($HTTP_POST_VARS['countries_iso_code_3']);

        $address_format_id = tep_db_prepare_input($HTTP_POST_VARS['address_format_id']);

 

        tep_db_query("insert into " . TABLE_COUNTRIES . " (countries_name, countries_iso_code_2, countries_iso_code_3, address_format_id) values ('" . tep_db_input($countries_name) . "', '" . tep_db_input($countries_iso_code_2) . "', '" . tep_db_input($countries_iso_code_3) . "', '" . (int)$address_format_id . "')");

 

        tep_redirect(tep_href_link(FILENAME_COUNTRIES));

        break;

      case 'save':

        $countries_id = tep_db_prepare_input($HTTP_GET_VARS['cID']);

        $countries_name = tep_db_prepare_input($HTTP_POST_VARS['countries_name']);

        $countries_iso_code_2 = tep_db_prepare_input($HTTP_POST_VARS['countries_iso_code_2']);

        $countries_iso_code_3 = tep_db_prepare_input($HTTP_POST_VARS['countries_iso_code_3']);

        $address_format_id = tep_db_prepare_input($HTTP_POST_VARS['address_format_id']);

 

        tep_db_query("update " . TABLE_COUNTRIES . " set countries_name = '" . tep_db_input($countries_name) . "', countries_iso_code_2 = '" . tep_db_input($countries_iso_code_2) . "', countries_iso_code_3 = '" . tep_db_input($countries_iso_code_3) . "', address_format_id = '" . (int)$address_format_id . "' where countries_id = '" . (int)$countries_id . "'");

 

        tep_redirect(tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&cID=' . $countries_id));

        break;

      case 'deleteconfirm':

        $countries_id = tep_db_prepare_input($HTTP_GET_VARS['cID']);

 

        tep_db_query("delete from " . TABLE_COUNTRIES . " where countries_id = '" . (int)$countries_id . "'");

 

        tep_redirect(tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page']));

        break;

    }

  }

?>

<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">

<html <?php echo HTML_PARAMS; ?>>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">

<title><?php echo TITLE; ?></title>

<link rel="stylesheet" type="text/css" href="includes/stylesheet.css">

<script language="javascript" src="includes/general.js"></script>

</head>

<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF" onload="SetFocus();">

<!-- header //-->

<?php require(DIR_WS_INCLUDES . 'header.php'); ?>

<!-- header_eof //-->

 

<!-- body //-->

<table border="0" width="100%" cellspacing="2" cellpadding="2">

  <tr>

    <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="1" cellpadding="1" class="columnLeft">

<!-- left_navigation //-->

<?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>

<!-- left_navigation_eof //-->

    </table></td>

<!-- body_text //-->

    <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">

      <tr>

        <td><table border="0" width="100%" cellspacing="0" cellpadding="0">

          <tr>

            <td class="pageHeading"><?php echo HEADING_TITLE; ?></td>

            <td class="pageHeading" align="right"><?php echo tep_draw_separator('pixel_trans.gif', HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>

          </tr>

        </table></td>

      </tr>

      <tr>

        <td><table border="0" width="100%" cellspacing="0" cellpadding="0">

          <tr>

            <td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">

              <tr class="dataTableHeadingRow">

                <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_COUNTRY_NAME; ?></td>

                <td class="dataTableHeadingContent" align="center" colspan="2"><?php echo TABLE_HEADING_COUNTRY_CODES; ?></td>

                <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_ACTION; ?> </td>

              </tr>

<?php

  $countries_query_raw = "select countries_id, countries_name, countries_iso_code_2, countries_iso_code_3, address_format_id from " . TABLE_COUNTRIES . " order by countries_name";

  $countries_split = new splitPageResults($HTTP_GET_VARS['page'], MAX_DISPLAY_SEARCH_RESULTS, $countries_query_raw, $countries_query_numrows);

  $countries_query = tep_db_query($countries_query_raw);

  while ($countries = tep_db_fetch_array($countries_query)) {

    if ((!isset($HTTP_GET_VARS['cID']) || (isset($HTTP_GET_VARS['cID']) && ($HTTP_GET_VARS['cID'] == $countries['countries_id']))) && !isset($cInfo) && (substr($action, 0, 3) != 'new')) {

      $cInfo = new objectInfo($countries);

    }

 

    if (isset($cInfo) && is_object($cInfo) && ($countries['countries_id'] == $cInfo->countries_id)) {

      echo '                  <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&cID=' . $cInfo->countries_id . '&action=edit') . '\'">' . "\n";

    } else {

      echo '                  <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&cID=' . $countries['countries_id']) . '\'">' . "\n";

    }

?>

                <td class="dataTableContent"><?php echo $countries['countries_name']; ?></td>

                <td class="dataTableContent" align="center" width="40"><?php echo $countries['countries_iso_code_2']; ?></td>

                <td class="dataTableContent" align="center" width="40"><?php echo $countries['countries_iso_code_3']; ?></td>

                <td class="dataTableContent" align="right"><?php if (isset($cInfo) && is_object($cInfo) && ($countries['countries_id'] == $cInfo->countries_id) ) { echo tep_image(DIR_WS_IMAGES . 'icon_arrow_right.gif', ''); } else { echo '<a href="' . tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&cID=' . $countries['countries_id']) . '">' . tep_image(DIR_WS_IMAGES . 'icon_info.gif', IMAGE_ICON_INFO) . '</a>'; } ?> </td>

              </tr>

<?php

  }

?>

              <tr>

                <td colspan="4"><table border="0" width="100%" cellspacing="0" cellpadding="2">

                  <tr>

                    <td class="smallText" valign="top"><?php echo $countries_split->display_count($countries_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, $HTTP_GET_VARS['page'], TEXT_DISPLAY_NUMBER_OF_COUNTRIES); ?></td>

                    <td class="smallText" align="right"><?php echo $countries_split->display_links($countries_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, MAX_DISPLAY_PAGE_LINKS, $HTTP_GET_VARS['page']); ?></td>

                  </tr>

<?php

  if (empty($action)) {

?>

                  <tr>

                    <td colspan="2" align="right"><?php echo '<a href="' . tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&action=new') . '">' . tep_image_button('button_new_country.gif', IMAGE_NEW_COUNTRY) . '</a>'; ?></td>

                  </tr>

<?php

  }

?>

                </table></td>

              </tr>

            </table></td>

<?php

  $heading = array();

  $contents = array();

 

  switch ($action) {

    case 'new':

      $heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_NEW_COUNTRY . '</b>');

 

      $contents = array('form' => tep_draw_form('countries', FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&action=insert'));

      $contents[] = array('text' => TEXT_INFO_INSERT_INTRO);

      $contents[] = array('text' => '<br>' . TEXT_INFO_COUNTRY_NAME . '<br>' . tep_draw_input_field('countries_name'));

      $contents[] = array('text' => '<br>' . TEXT_INFO_COUNTRY_CODE_2 . '<br>' . tep_draw_input_field('countries_iso_code_2'));

      $contents[] = array('text' => '<br>' . TEXT_INFO_COUNTRY_CODE_3 . '<br>' . tep_draw_input_field('countries_iso_code_3'));

      $contents[] = array('text' => '<br>' . TEXT_INFO_ADDRESS_FORMAT . '<br>' . tep_draw_pull_down_menu('address_format_id', tep_get_address_formats()));

      $contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_insert.gif', IMAGE_INSERT) . ' <a href="' . tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page']) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

      break;

    case 'edit':

      $heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_EDIT_COUNTRY . '</b>');

 

      $contents = array('form' => tep_draw_form('countries', FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&cID=' . $cInfo->countries_id . '&action=save'));

      $contents[] = array('text' => TEXT_INFO_EDIT_INTRO);

      $contents[] = array('text' => '<br>' . TEXT_INFO_COUNTRY_NAME . '<br>' . tep_draw_input_field('countries_name', $cInfo->countries_name));

      $contents[] = array('text' => '<br>' . TEXT_INFO_COUNTRY_CODE_2 . '<br>' . tep_draw_input_field('countries_iso_code_2', $cInfo->countries_iso_code_2));

      $contents[] = array('text' => '<br>' . TEXT_INFO_COUNTRY_CODE_3 . '<br>' . tep_draw_input_field('countries_iso_code_3', $cInfo->countries_iso_code_3));

      $contents[] = array('text' => '<br>' . TEXT_INFO_ADDRESS_FORMAT . '<br>' . tep_draw_pull_down_menu('address_format_id', tep_get_address_formats(), $cInfo->address_format_id));

      $contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_update.gif', IMAGE_UPDATE) . ' <a href="' . tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&cID=' . $cInfo->countries_id) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

      break;

    case 'delete':

      $heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_DELETE_COUNTRY . '</b>');

 

      $contents = array('form' => tep_draw_form('countries', FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&cID=' . $cInfo->countries_id . '&action=deleteconfirm'));

      $contents[] = array('text' => TEXT_INFO_DELETE_INTRO);

      $contents[] = array('text' => '<br><b>' . $cInfo->countries_name . '</b>');

      $contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_delete.gif', IMAGE_UPDATE) . ' <a href="' . tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&cID=' . $cInfo->countries_id) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

      break;

    default:

      if (is_object($cInfo)) {

        $heading[] = array('text' => '<b>' . $cInfo->countries_name . '</b>');

 

        $contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&cID=' . $cInfo->countries_id . '&action=edit') . '">' . tep_image_button('button_edit.gif', IMAGE_EDIT) . '</a> <a href="' . tep_href_link(FILENAME_COUNTRIES, 'page=' . $HTTP_GET_VARS['page'] . '&cID=' . $cInfo->countries_id . '&action=delete') . '">' . tep_image_button('button_delete.gif', IMAGE_DELETE) . '</a>');

        $contents[] = array('text' => '<br>' . TEXT_INFO_COUNTRY_NAME . '<br>' . $cInfo->countries_name);

        $contents[] = array('text' => '<br>' . TEXT_INFO_COUNTRY_CODE_2 . ' ' . $cInfo->countries_iso_code_2);

        $contents[] = array('text' => '<br>' . TEXT_INFO_COUNTRY_CODE_3 . ' ' . $cInfo->countries_iso_code_3);

        $contents[] = array('text' => '<br>' . TEXT_INFO_ADDRESS_FORMAT . ' ' . $cInfo->address_format_id);

      }

      break;

  }

 

  if ( (tep_not_null($heading)) && (tep_not_null($contents)) ) {

    echo '            <td width="25%" valign="top">' . "\n";

 

    $box = new box;

    echo $box->infoBox($heading, $contents);

 

    echo '            </td>' . "\n";

  }

?>

          </tr>

        </table></td>

      </tr>

    </table></td>

<!-- body_text_eof //-->

  </tr>

</table>

<!-- body_eof //-->

 

<!-- footer //-->

<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>

<!-- footer_eof //-->

<br>

</body>

</html>

<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>

 

tep_db_query

in admin/backup.php

 

tep_db_query("drop table if exists address_book, address_format, banners, banners_history, categories, categories_description, configuration, configuration_group, counter, counter_history, countries, currencies, customers, customers_basket, customers_basket_attributes, customers_info, languages, manufacturers, manufacturers_info, orders, orders_products, orders_status, orders_status_history, orders_products_attributes, orders_products_download, products, products_attributes, products_attributes_download, prodcts_description, products_options, products_options_values, products_options_values_to_products_options, products_to_categories, reviews, reviews_description, sessions, specials, tax_class, tax_rates, geo_zones, whos_online, zones, zones_to_geo_zones");

 

Did I miss anything?

 

I already made the files /admin/includes/english/referrer.php and /admin/referrer.php. I just haven't replaced anything for the /admin/referrer.php file.

 

I added the correct define() terms in these files also: /admin/includes/filenames.php, /admin/includes/database_tables.php, /includes/database_tables.php

 

Last, is there another way I can add a section to the database so that I can put in what state, city, and the rank the referrer is via the admin?

Link to comment
Share on other sites

so far i have done this to my database:

 

MADE:

referrers_id            (int)      11    auto increment

referrers_name    (vars)      64

referrers_state    (char)      2

referrers_rank      (char)      5

 

SET:

referrers_id to PRIMARY

referrers_name to IDX_REFERRERS_NAME

 

I want to be able to make the rank have two choices, State or City, and be selectable via radio buttion when editing a Referrer.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...