Помогите сделать всё в одну строчку

Тема в разделе "VirtueMart", создана пользователем Skomoroh, 31.03.2011.

  1. Offline

    Skomoroh Недавно здесь

    Регистрация:
    08.01.2011
    Сообщения:
    8
    Симпатии:
    0
    Пол:
    Мужской
    Есть фильтр товаров. Но он выводит типы в столбик, а нужно в строчку. как это сделать????
    Вот код:
    Код (PHP):
    1. <?php
    2. if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
    3. /**
    4. * Virtuemart Product Filter Module
    5. *
    6. * @version $Id: mod_vm_product_filter.php 1109 2010-12-10 10:30:30Z webgobe $
    7. * @package VirtueMart
    8. * @subpackage modules
    9. *
    10. * @copyright (C) 2004-2007 soeren - All Rights reserved.
    11. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
    12. * VirtueMart is Free Software.
    13. * VirtueMart comes with absolute no warranty.
    14. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
    15. *
    16. * www.virtuemart.net
    17. */
    18.  
    19. // Load the virtuemart main parse code
    20.  
    21. global $mosConfig_absolute_path, $sess, $VM_LANG;
    22. // Load the virtuemart main parse code
    23. if( file_exists(dirname(__FILE__).'/../../components/com_virtuemart/virtuemart_parser.php' )) {
    24.     require_once( dirname(__FILE__).'/../../components/com_virtuemart/virtuemart_parser.php' );
    25. } else {
    26.     require_once( dirname(__FILE__).'/../components/com_virtuemart/virtuemart_parser.php' );
    27. }
    28. $sess = new ps_session;
    29. $text_before            = $params->get( 'text_before', '');
    30. $product_type_id= $params->get( 'product_type_id', 1);
    31. $current_url    = vmGet( $_SERVER, 'REQUEST_URI', '' );
    32. $shopItemid     = $sess->getShopItemid();
    33. $Itemid         = $params->get( 'Itemid', $shopItemid);
    34. $db = new ps_DB;
    35. $q  = "SELECT * FROM #__{vm}_product_type ";
    36. $q .= "WHERE product_type_id='$product_type_id' ";
    37. $q .= "AND product_type_publish='Y'";
    38. $db->query($q);
    39.  
    40. $browsepage = $db->f("product_type_browsepage");
    41. echo $text_before;
    42. if (!$db->next_record()) { // There is no published Product Type
    43.         echo $VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_BAD_PRODUCT_TYPE');
    44. } else {
    45.         echo $VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IN_CATEGORY').": ".$db->f("product_type_name");
    46.        
    47. ?>
    48. <form action="<?php echo URL ?>index.php" method="post" name="attr_search" >
    49. <input type="hidden" name="option" value="com_virtuemart" />
    50. <input type="hidden" name="page" value="shop.browse" />
    51. <input type="hidden" name="product_type_id" value="<?php echo $product_type_id ?>" />
    52. <input type="hidden" name="Itemid" value="<?php echo $Itemid ?>" />
    53. <?php
    54.     $q  = "SELECT * FROM #__{vm}_product_type_parameter ";
    55.     $q .= "WHERE product_type_id=$product_type_id ";
    56.     $q .= "ORDER BY parameter_list_order";
    57.     $db->query($q);
    58.     ?>
    59.     <table width="100%" border="0" cellpadding="2" cellspacing="0">
    60.     <?php
    61.     if (!empty($browsepage)) { // show browsepage
    62.         /**
    63.         *   Read the template file into a String variable.
    64.         *
    65.         * function read_file( $file, $defaultfile='') ***/
    66.         $template = read_file( PAGEPATH."templates/".$browsepage.".php");
    67.         //$template = str_replace( "{product_type_id}", $product_type_id, $template );  // If you need this, use it...
    68.         while ($db->next_record()) {
    69.             $item_name = "product_type_$product_type_id"."_".$db->f("parameter_name");
    70.             $parameter_values=$db->f("parameter_values");
    71.             $get_item_value = vmGet($_REQUEST, $item_name, "");
    72.             $get_item_value_comp = vmGet($_REQUEST, $item_name."_comp", "");
    73.             $parameter_type = $db->f("parameter_type");
    74.            
    75.             // Replace parameter value
    76.             $template = str_replace( "{".$item_name."_value}", $get_item_value, $template );
    77.                
    78.             // comparison
    79.             if (!empty($parameter_values) && $db->f("parameter_multiselect")=="Y") {
    80.                 if ($parameter_type == "V") { // type: Multiple Values
    81.                     // Multiple section List of values - comparison FIND_IN_SET
    82.                     $comp  = "<td width=\"%\"  align=\"center\">";
    83.                     $comp .= "<select class=\"styled\" name=\"".$item_name."_comp\">";
    84.                     $comp .= "<option value=\"find_in_set_all\"".(($get_item_value_comp=="find_in_set_all")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ALL')."</option>";
    85.                     $comp .= "<option value=\"find_in_set_any\"".(($get_item_value_comp=="find_in_set_any")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ANY')."</option>";
    86.                     $comp .= "</select></td>";
    87.                 }
    88.                 else { // type: all other
    89.                     // Multiple section List of values - no comparison
    90.                     $comp = "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"in\" /></td>";
    91.                 }
    92.             }
    93.             else {
    94.                 switch( $parameter_type ) {
    95.                     case "C": // Char
    96.                         if (!empty($parameter_values)) { // List of values - no comparison
    97.                             $comp = "<input type=\"\" name=\"".$item_name."_comp\" value=\"eq\" />";
    98.                             break;
    99.                         }
    100.                     case "I": // Integer
    101.                     case "F": // Float
    102.                     case "D": // Date & Time
    103.                     case "A": // Date
    104.                     case "M": // Time
    105.                         $comp  = "<select class=\"styled\" name=\"".$item_name."_comp\">";
    106.                         $comp .= "<option value=\"lt\"".(($get_item_value_comp=="lt")?" selected":"").">&lt;</option>";
    107.                         $comp .= "<option value=\"le\"".(($get_item_value_comp=="le")?" selected":"").">&lt;=</option>";
    108.                         $comp .= "<option value=\"eq\"".(($get_item_value_comp=="eq")?" selected":"").">=</option>";
    109.                         $comp .= "<option value=\"ge\"".((empty($get_item_value_comp)||$get_item_value_comp=="ge")?" selected":"").">&gt;=</option>";
    110.                         $comp .= "<option value=\"gt\"".(($get_item_value_comp=="gt")?" selected":"").">&gt;</option>";
    111.                         $comp .= "<option value=\"ne\"".(($get_item_value_comp=="ne")?" selected":"").">&lt;&gt;</option>";
    112.                         $comp .= "</select>";
    113.                         break;
    114.                     case "T": // Text
    115.                         if (!empty($parameter_values)) { // List of values - no comparison
    116.                             $comp = "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" />";
    117.                             break;
    118.                         }
    119.                         $comp  = "<select class=\"styled\" name=\"".$item_name."_comp\">";
    120.                         $comp .= "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>";
    121.                         $comp .= "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>";
    122.                         $comp .= "<option value=\"fulltext\"".(($get_item_value_comp=="fulltext")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FULLTEXT')."</option>";
    123.                         $comp .= "</select>";
    124.                         break;
    125.                     case "S": // Short Text
    126.                     default:  // Default type Short Text
    127.                         if (!empty($parameter_values)) { // List of values - no comparison
    128.                             $comp = "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" />";
    129.                             break;
    130.                         }
    131.                         $comp  = "<select class=\"styled\" name=\"".$item_name."_comp\">";
    132.                         $comp .= "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>";
    133.                         $comp .= "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>";
    134.                         $comp .= "</select></td>";
    135.                 }
    136.             }
    137.             // Relace parameter comparison
    138.             $template = str_replace( "{".$item_name."_comp}", $comp, $template );
    139.            
    140.             // Parameter field
    141.             if (!empty($parameter_values)) { // List of values
    142.                 $fields=explode(";",$parameter_values);
    143.                 $attr = "<select class=\"styled\" name=\"$item_name";
    144.                 if ($db->f("parameter_multiselect")=="Y") {
    145.                     $size = min(count($fields),6);
    146.                     $attr .= "[]\" multiple size=\"$size\">";
    147.                     $selected_value = array();
    148.                     $get_item_value = vmGet($_REQUEST, $item_name, array());
    149.                     foreach($get_item_value as $value) {
    150.                         $selected_value[$value] = 1;
    151.                     }
    152.                     foreach($fields as $field) {
    153.                         $attr .= "<option value=\"$field\"".(($selected_value[$field]==1) ? " selected>" : ">"). $field."</option>";
    154.                     }
    155.                 }
    156.                 else {
    157.                     $attr .= "\">";
    158.                     $attr .= "<option value=\"\">".$VM_LANG->_('PHPSHOP_SELECT')."</option>";
    159.                     foreach($fields as $field) {
    160.                         $attr .= "<option value=\"$field\"".(($get_item_value==$field) ? " selected>" : ">"). $field."</option>";
    161.                     }
    162.                 }
    163.                 $attr .= "</select>";
    164.             }
    165.             else { // Input field                  
    166.                 switch( $parameter_type ) {
    167.                     case "I": // Integer
    168.                     case "F": // Float
    169.                     case "D": // Date & Time
    170.                     case "A": // Date
    171.                     case "M": // Time
    172.                         $attr = "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"20\" />";
    173.                         break;
    174.                     case "T": // Text
    175.                         $attr = "<textarea class=\"styled\" name=\"$item_name\" cols=\"35\" rows=\"6\" >$get_item_value</textarea>";
    176.                         break;
    177.                     case "C": // Char
    178.                         $attr = "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"5\" />";
    179.                         break;
    180.                     case "S": // Short Text
    181.                     default: // Default type Short Text
    182.                         $attr = "<input type=\"text\" class=\"styled\" name=\"$item_name\" value=\"$get_item_value\" size=\"50\" />";
    183.                 }
    184.             }
    185.             // Relace parameter
    186.             $template = str_replace( "{".$item_name."}", $attr, $template );
    187.         }
    188.         echo $template;
    189.     }
    190.     else { // show default list of parameters
    191.        
    192.         while ($db->next_record()) {
    193.             $parameter_type = $db->f("parameter_type");
    194.             if ($parameter_type!="B") {
    195.                 echo "<tr valign=\"top\">  <td   ><div align=\"right\"><strong>";
    196.                 echo $db->f("parameter_label");
    197.                 echo "&nbsp;:</strong></div>  </td>";
    198.                
    199.                 $parameter_values=$db->f("parameter_values");
    200.                 $item_name = "product_type_$product_type_id"."_".$db->f("parameter_name");
    201.                 $get_item_value = vmGet($_REQUEST, $item_name, "");
    202.                 $get_item_value_comp = vmGet($_REQUEST, $item_name."_comp", "");
    203.                
    204.                 // comparison
    205.                 if (!empty($parameter_values) && $db->f("parameter_multiselect")=="Y") {
    206.                     if ($parameter_type == "V") { // type: Multiple Values
    207.                         // Multiple section List of values - comparison FIND_IN_SET
    208.                         echo "<td width=\"10%\"  align=\"center\">";
    209.                         echo "<select class=\"styled\" name=\"".$item_name."_comp\">";
    210.                         echo "<option value=\"find_in_set_all\"".(($get_item_value_comp=="find_in_set_all")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ALL')."</option>";
    211.                         echo "<option value=\"find_in_set_any\"".(($get_item_value_comp=="find_in_set_any")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ANY')."</option>";
    212.                         echo "</select></td>";
    213.                     }
    214.                     else { // type: all other
    215.                         // Multiple section List of values - no comparison
    216.                         echo "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"in\" /></td>";
    217.                     }
    218.                 }
    219.                 else {
    220.                     switch( $parameter_type ) {
    221.                         case "C": // Char
    222.                             if (!empty($parameter_values)) { // List of values - no comparison
    223.                                 echo "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"eq\" /></td>";
    224.                                 break;
    225.                             }
    226.                         case "I": // Integer
    227.                         case "F": // Float
    228.                         case "D": // Date & Time
    229.                         case "A": // Date
    230.                         case "M": // Time
    231.                             echo "<td width=\"10%\"  align=\"center\">";
    232.                             echo "<select class=\"styled\" name=\"".$item_name."_comp\">";
    233.                             echo "<option value=\"lt\"".(($get_item_value_comp=="lt")?" selected":"").">&lt;</option>";
    234.                             echo "<option value=\"le\"".(($get_item_value_comp=="le")?" selected":"").">&lt;=</option>";
    235.                             echo "<option value=\"eq\"".(($get_item_value_comp=="eq")?" selected":"").">=</option>";
    236.                             echo "<option value=\"ge\"".((empty($get_item_value_comp)||$get_item_value_comp=="ge")?" selected":"").">&gt;=</option>";
    237.                             echo "<option value=\"gt\"".(($get_item_value_comp=="gt")?" selected":"").">&gt;</option>";
    238.                             echo "<option value=\"ne\"".(($get_item_value_comp=="ne")?" selected":"").">&lt;&gt;</option>";
    239.                             echo "</select></td>";
    240.                             break;
    241.                         case "T": // Text
    242.                             if (!empty($parameter_values)) { // List of values - no comparison
    243.                                 echo "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" /></td>";
    244.                                 break;
    245.                             }
    246.                             echo "<td width=\"10%\"  align=\"center\">";
    247.                             echo "<select class=\"styled\" name=\"".$item_name."_comp\">";
    248.                             echo "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>";
    249.                             echo "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>";
    250.                             echo "<option value=\"fulltext\"".(($get_item_value_comp=="fulltext")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FULLTEXT')."</option>";
    251.                             echo "</select></td>";
    252.                             break;
    253.                         case "V": // Multiple Value
    254.                             echo "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"find_in_set\" /></td>";
    255.                             break;
    256.                         case "S": // Short Text
    257.                         default:  // Default type Short Text
    258.                             if (!empty($parameter_values)) { // List of values - no comparison
    259.                                 echo "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" /></td>";
    260.                                 break;
    261.                             }
    262.                             echo "<td width=\"10%\"  align=\"center\">";
    263.                             echo "<select class=\"styled\" name=\"".$item_name."_comp\">";
    264.                             echo "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>";
    265.                             echo "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>";
    266.                             echo "</select></td>";
    267.                     }
    268.                 }
    269.                
    270.                 if (!empty($parameter_values)) { // List of values
    271.                     $fields=explode(";",$parameter_values);
    272.                     echo "<td  >";
    273.                     echo "<select class=\"styled\" name=\"$item_name";
    274.                     if ($db->f("parameter_multiselect")=="Y") {
    275.                         $size = min(count($fields),6);
    276.                         echo "[]\" multiple size=\"$size\">";
    277.                         $selected_value = array();
    278.                         $get_item_value = vmGet($_REQUEST, $item_name, array());
    279.                         foreach($get_item_value as $value) {
    280.                             $selected_value[$value] = 1;
    281.                         }
    282.                         foreach($fields as $field) {
    283.                             echo "<option value=\"$field\"".(($selected_value[$field]==1) ? " selected>" : ">"). $field."</option>";
    284.                         }
    285.                     }
    286.                     else {
    287.                         echo "\">";
    288.                         echo "<option value=\"\">".$VM_LANG->_('PHPSHOP_SELECT')."</option>";
    289.                         foreach($fields as $field) {
    290.                             echo "<option value=\"$field\"".(($get_item_value==$field) ? " selected>" : ">"). $field."</option>";
    291.                         }
    292.                     }
    293.                     echo "</select>";
    294.                 }
    295.                 else { // Input field                  
    296.                     echo "<td >";
    297.                     switch( $parameter_type ) {
    298.                         case "I": // Integer
    299.                         case "F": // Float
    300.                         case "D": // Date & Time
    301.                         case "A": // Date
    302.                         case "M": // Time
    303.                             echo "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"20\" />";
    304.                             break;
    305.                         case "T": // Text
    306.                             echo "<textarea class=\"styled\" name=\"$item_name\" cols=\"35\" rows=\"6\" >$get_item_value</textarea>";
    307.                             break;
    308.                         case "C": // Char
    309.                             echo "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"5\" />";
    310.                             break;
    311.                         case "S": // Short Text
    312.                         default: // Default type Short Text
    313.                             echo "<input type=\"text\" class=\"styled\" name=\"$item_name\" value=\"$get_item_value\" size=\"50\" />";
    314.                     }
    315.                 }
    316.                 echo " ".$db->f("parameter_unit");
    317.                 switch( $parameter_type ) {
    318.                     case "D": // Date & Time
    319.                         echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_DATE_FORMAT')." ";
    320.                         echo $VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_TIME_FORMAT').")";
    321.                         break;
    322.                     case "A": // Date
    323.                         echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_DATE_FORMAT').")";
    324.                         break;
    325.                     case "M": // Time
    326.                         echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_TIME_FORMAT').")";
    327.                         break;
    328.                 }
    329.             }
    330.             else { // Break line (type == "B")
    331.                 echo "<tr valign=\"top\">  <td colspan=\"3\" ><hr>";
    332.             }
    333.             echo "  </td></tr>";
    334.         }
    335.     }
    336.     // Search Button
    337. ?> 
    338.     <tr valign="top"><td colspan="3" height="2" ><div align="center">
    339.         <input type="submit" class="button" name="search" value="<?php echo $VM_LANG->_('PHPSHOP_SEARCH_TITLE') ?>">
    340.         </div></td>
    341.     </tr>
    342. </table>
    343. <?php
    344.   } // end - There is a published Product Type
    345. /** Changed Product Type - End */
    346. ?>
    347. </form>


    Что нужно изменить или добавить???
     

    Вложения:

  2.  
  3. vesy
    Offline

    vesy специалист

    Регистрация:
    02.07.2010
    Сообщения:
    263
    Симпатии:
    53
    Пол:
    Мужской
    Не тестировал, может поможет;)
    Код (CODE):
    1. <?php
    2. if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
    3. /**
    4. * Virtuemart Product Filter Module
    5. *
    6. * @version $Id: mod_vm_product_filter.php 1109 2010-12-10 10:30:30Z webgobe $
    7. * @package VirtueMart
    8. * @subpackage modules
    9. *
    10. * @copyright (C) 2004-2007 soeren - All Rights reserved.
    11. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
    12. * VirtueMart is Free Software.
    13. * VirtueMart comes with absolute no warranty.
    14. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
    15. *
    16. * www.virtuemart.net
    17. */
    18.  
    19. // Load the virtuemart main parse code
    20.  
    21. global $mosConfig_absolute_path, $sess, $VM_LANG;
    22. // Load the virtuemart main parse code
    23. if( file_exists(dirname(__FILE__).'/../../components/com_virtuemart/virtuemart_parser.php' )) {
    24.     require_once( dirname(__FILE__).'/../../components/com_virtuemart/virtuemart_parser.php' );
    25. } else {
    26.     require_once( dirname(__FILE__).'/../components/com_virtuemart/virtuemart_parser.php' );
    27. }
    28. $sess = new ps_session;
    29. $text_before            = $params->get( 'text_before', '');
    30. $product_type_id= $params->get( 'product_type_id', 1);
    31. $current_url    = vmGet( $_SERVER, 'REQUEST_URI', '' );
    32. $shopItemid     = $sess->getShopItemid();
    33. $Itemid          = $params->get( 'Itemid', $shopItemid);
    34. $db = new ps_DB;
    35. $q  = "SELECT * FROM #__{vm}_product_type ";
    36. $q .= "WHERE product_type_id='$product_type_id' ";
    37. $q .= "AND product_type_publish='Y'";
    38. $db->query($q);
    39.  
    40. $browsepage = $db->f("product_type_browsepage");
    41. echo $text_before;
    42. if (!$db->next_record()) { // There is no published Product Type
    43.         echo $VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_BAD_PRODUCT_TYPE');
    44. } else {
    45.         echo $VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IN_CATEGORY').": ".$db->f("product_type_name");
    46.        
    47. ?>
    48. <form action="<?php echo URL ?>index.php" method="post" name="attr_search" >
    49. <input type="hidden" name="option" value="com_virtuemart" />
    50. <input type="hidden" name="page" value="shop.browse" />
    51. <input type="hidden" name="product_type_id" value="<?php echo $product_type_id ?>" />
    52. <input type="hidden" name="Itemid" value="<?php echo $Itemid ?>" />
    53. <?php
    54.     $q  = "SELECT * FROM #__{vm}_product_type_parameter ";
    55.     $q .= "WHERE product_type_id=$product_type_id ";
    56.     $q .= "ORDER BY parameter_list_order";
    57.     $db->query($q);
    58.     ?>
    59.     <table width="100%" border="0" cellpadding="2" cellspacing="0">
    60.     <?php
    61.     if (!empty($browsepage)) { // show browsepage
    62.         /**
    63.         *   Read the template file into a String variable.
    64.         *
    65.         * function read_file( $file, $defaultfile='') ***/
    66.         $template = read_file( PAGEPATH."templates/".$browsepage.".php");
    67.         //$template = str_replace( "{product_type_id}", $product_type_id, $template );    // If you need this, use it...
    68.         while ($db->next_record()) {
    69.             $item_name = "product_type_$product_type_id"."_".$db->f("parameter_name");
    70.             $parameter_values=$db->f("parameter_values");
    71.             $get_item_value = vmGet($_REQUEST, $item_name, "");
    72.             $get_item_value_comp = vmGet($_REQUEST, $item_name."_comp", "");
    73.             $parameter_type = $db->f("parameter_type");
    74.            
    75.             // Replace parameter value
    76.             $template = str_replace( "{".$item_name."_value}", $get_item_value, $template );
    77.                
    78.             // comparison
    79.             if (!empty($parameter_values) && $db->f("parameter_multiselect")=="Y") {
    80.                 if ($parameter_type == "V") { // type: Multiple Values
    81.                     // Multiple section List of values - comparison FIND_IN_SET
    82.                     $comp  = "<select class=\"styled\" name=\"".$item_name."_comp\">";
    83.                     $comp .= "<option value=\"find_in_set_all\"".(($get_item_value_comp=="find_in_set_all")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ALL')."</option>";
    84.                     $comp .= "<option value=\"find_in_set_any\"".(($get_item_value_comp=="find_in_set_any")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ANY')."</option>";
    85.                     $comp .= "</select>";
    86.                 }
    87.                 else { // type: all other
    88.                     // Multiple section List of values - no comparison
    89.                     $comp = " <input type=\"hidden\" name=\"".$item_name."_comp\" value=\"in\" /> ";
    90.                 }
    91.             }
    92.             else {
    93.                 switch( $parameter_type ) {
    94.                     case "C": // Char
    95.                         if (!empty($parameter_values)) { // List of values - no comparison
    96.                             $comp = "<input type=\"\" name=\"".$item_name."_comp\" value=\"eq\" />";
    97.                             break;
    98.                         }
    99.                     case "I": // Integer
    100.                     case "F": // Float
    101.                     case "D": // Date & Time
    102.                     case "A": // Date
    103.                     case "M": // Time
    104.                         $comp  = "<select class=\"styled\" name=\"".$item_name."_comp\">";
    105.                         $comp .= "<option value=\"lt\"".(($get_item_value_comp=="lt")?" selected":"").">&lt;</option>";
    106.                         $comp .= "<option value=\"le\"".(($get_item_value_comp=="le")?" selected":"").">&lt;=</option>";
    107.                         $comp .= "<option value=\"eq\"".(($get_item_value_comp=="eq")?" selected":"").">=</option>";
    108.                         $comp .= "<option value=\"ge\"".((empty($get_item_value_comp)||$get_item_value_comp=="ge")?" selected":"").">&gt;=</option>";
    109.                         $comp .= "<option value=\"gt\"".(($get_item_value_comp=="gt")?" selected":"").">&gt;</option>";
    110.                         $comp .= "<option value=\"ne\"".(($get_item_value_comp=="ne")?" selected":"").">&lt;&gt;</option>";
    111.                         $comp .= "</select>";
    112.                         break;
    113.                     case "T": // Text
    114.                         if (!empty($parameter_values)) { // List of values - no comparison
    115.                             $comp = "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" />";
    116.                             break;
    117.                         }
    118.                         $comp  = "<select class=\"styled\" name=\"".$item_name."_comp\">";
    119.                         $comp .= "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>";
    120.                         $comp .= "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>";
    121.                         $comp .= "<option value=\"fulltext\"".(($get_item_value_comp=="fulltext")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FULLTEXT')."</option>";
    122.                         $comp .= "</select>";
    123.                         break;
    124.                     case "S": // Short Text
    125.                     default:  // Default type Short Text
    126.                         if (!empty($parameter_values)) { // List of values - no comparison
    127.                             $comp = "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" />";
    128.                             break;
    129.                         }
    130.                         $comp  = "<select class=\"styled\" name=\"".$item_name."_comp\">";
    131.                         $comp .= "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>";
    132.                         $comp .= "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>";
    133.                         $comp .= "</select> ";
    134.                 }
    135.             }
    136.             // Relace parameter comparison
    137.             $template = str_replace( "{".$item_name."_comp}", $comp, $template );
    138.            
    139.             // Parameter field
    140.             if (!empty($parameter_values)) { // List of values
    141.                 $fields=explode(";",$parameter_values);
    142.                 $attr = "<select class=\"styled\" name=\"$item_name";
    143.                 if ($db->f("parameter_multiselect")=="Y") {
    144.                     $size = min(count($fields),6);
    145.                     $attr .= "[]\" multiple size=\"$size\">";
    146.                     $selected_value = array();
    147.                     $get_item_value = vmGet($_REQUEST, $item_name, array());
    148.                     foreach($get_item_value as $value) {
    149.                         $selected_value[$value] = 1;
    150.                     }
    151.                     foreach($fields as $field) {
    152.                         $attr .= "<option value=\"$field\"".(($selected_value[$field]==1) ? " selected>" : ">"). $field."</option>";
    153.                     }
    154.                 }
    155.                 else {
    156.                     $attr .= "\">";
    157.                     $attr .= "<option value=\"\">".$VM_LANG->_('PHPSHOP_SELECT')."</option>";
    158.                     foreach($fields as $field) {
    159.                         $attr .= "<option value=\"$field\"".(($get_item_value==$field) ? " selected>" : ">"). $field."</option>";
    160.                     }
    161.                 }
    162.                 $attr .= "</select>";
    163.             }
    164.             else { // Input field                    
    165.                 switch( $parameter_type ) {
    166.                     case "I": // Integer
    167.                     case "F": // Float
    168.                     case "D": // Date & Time
    169.                     case "A": // Date
    170.                     case "M": // Time
    171.                         $attr = "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"20\" />";
    172.                         break;
    173.                     case "T": // Text
    174.                         $attr = "<textarea class=\"styled\" name=\"$item_name\" cols=\"35\" rows=\"6\" >$get_item_value</textarea>";
    175.                         break;
    176.                     case "C": // Char
    177.                         $attr = "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"5\" />";
    178.                         break;
    179.                     case "S": // Short Text
    180.                     default: // Default type Short Text
    181.                         $attr = "<input type=\"text\" class=\"styled\" name=\"$item_name\" value=\"$get_item_value\" size=\"50\" />";
    182.                 }
    183.             }
    184.             // Relace parameter
    185.             $template = str_replace( "{".$item_name."}", $attr, $template );
    186.         }
    187.         echo $template;
    188.     }
    189.     else { // show default list of parameters
    190.        
    191.         while ($db->next_record()) {
    192.             $parameter_type = $db->f("parameter_type");
    193.             if ($parameter_type!="B") {
    194.                 echo " <div align=\"right\"><strong>";
    195.                 echo $db->f("parameter_label");
    196.                 echo "&nbsp;:</strong></div> ";
    197.                
    198.                 $parameter_values=$db->f("parameter_values");
    199.                 $item_name = "product_type_$product_type_id"."_".$db->f("parameter_name");
    200.                 $get_item_value = vmGet($_REQUEST, $item_name, "");
    201.                 $get_item_value_comp = vmGet($_REQUEST, $item_name."_comp", "");
    202.                
    203.                 // comparison
    204.                 if (!empty($parameter_values) && $db->f("parameter_multiselect")=="Y") {
    205.                     if ($parameter_type == "V") { // type: Multiple Values
    206.                         // Multiple section List of values - comparison FIND_IN_SET
    207.                         echo "<select class=\"styled\" name=\"".$item_name."_comp\">";
    208.                         echo "<option value=\"find_in_set_all\"".(($get_item_value_comp=="find_in_set_all")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ALL')."</option>";
    209.                         echo "<option value=\"find_in_set_any\"".(($get_item_value_comp=="find_in_set_any")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ANY')."</option>";
    210.                         echo "</select> ";
    211.                     }
    212.                     else { // type: all other
    213.                         // Multiple section List of values - no comparison
    214.                         echo " <input type=\"hidden\" name=\"".$item_name."_comp\" value=\"in\" /> ";
    215.                     }
    216.                 }
    217.                 else {
    218.                     switch( $parameter_type ) {
    219.                         case "C": // Char
    220.                             if (!empty($parameter_values)) { // List of values - no comparison
    221.                                 echo " <input type=\"hidden\" name=\"".$item_name."_comp\" value=\"eq\" /> ";
    222.                                 break;
    223.                             }
    224.                         case "I": // Integer
    225.                         case "F": // Float
    226.                         case "D": // Date & Time
    227.                         case "A": // Date
    228.                         case "M": // Time
    229.                             echo "<select class=\"styled\" name=\"".$item_name."_comp\">";
    230.                             echo "<option value=\"lt\"".(($get_item_value_comp=="lt")?" selected":"").">&lt;</option>";
    231.                             echo "<option value=\"le\"".(($get_item_value_comp=="le")?" selected":"").">&lt;=</option>";
    232.                             echo "<option value=\"eq\"".(($get_item_value_comp=="eq")?" selected":"").">=</option>";
    233.                             echo "<option value=\"ge\"".((empty($get_item_value_comp)||$get_item_value_comp=="ge")?" selected":"").">&gt;=</option>";
    234.                             echo "<option value=\"gt\"".(($get_item_value_comp=="gt")?" selected":"").">&gt;</option>";
    235.                             echo "<option value=\"ne\"".(($get_item_value_comp=="ne")?" selected":"").">&lt;&gt;</option>";
    236.                             echo "</select> ";
    237.                             break;
    238.                         case "T": // Text
    239.                             if (!empty($parameter_values)) { // List of values - no comparison
    240.                                 echo " <input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" /> ";
    241.                                 break;
    242.                             }
    243.                             echo "<select class=\"styled\" name=\"".$item_name."_comp\">";
    244.                             echo "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>";
    245.                             echo "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>";
    246.                             echo "<option value=\"fulltext\"".(($get_item_value_comp=="fulltext")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FULLTEXT')."</option>";
    247.                             echo "</select> ";
    248.                             break;
    249.                         case "V": // Multiple Value
    250.                             echo " <input type=\"hidden\" name=\"".$item_name."_comp\" value=\"find_in_set\" /> ";
    251.                             break;
    252.                         case "S": // Short Text
    253.                         default:  // Default type Short Text
    254.                             if (!empty($parameter_values)) { // List of values - no comparison
    255.                                 echo " <input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" /> ";
    256.                                 break;
    257.                             }
    258.                             echo "<select class=\"styled\" name=\"".$item_name."_comp\">";
    259.                             echo "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>";
    260.                             echo "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>";
    261.                             echo "</select> ";
    262.                     }
    263.                 }
    264.                
    265.                 if (!empty($parameter_values)) { // List of values
    266.                     $fields=explode(";",$parameter_values);
    267.                     echo "<select class=\"styled\" name=\"$item_name";
    268.                     if ($db->f("parameter_multiselect")=="Y") {
    269.                         $size = min(count($fields),6);
    270.                         echo "[]\" multiple size=\"$size\">";
    271.                         $selected_value = array();
    272.                         $get_item_value = vmGet($_REQUEST, $item_name, array());
    273.                         foreach($get_item_value as $value) {
    274.                             $selected_value[$value] = 1;
    275.                         }
    276.                         foreach($fields as $field) {
    277.                             echo "<option value=\"$field\"".(($selected_value[$field]==1) ? " selected>" : ">"). $field."</option>";
    278.                         }
    279.                     }
    280.                     else {
    281.                         echo "\">";
    282.                         echo "<option value=\"\">".$VM_LANG->_('PHPSHOP_SELECT')."</option>";
    283.                         foreach($fields as $field) {
    284.                             echo "<option value=\"$field\"".(($get_item_value==$field) ? " selected>" : ">"). $field."</option>";
    285.                         }
    286.                     }
    287.                     echo "</select>";
    288.                 }
    289.                 else { // Input field        
    290.                     switch( $parameter_type ) {
    291.                         case "I": // Integer
    292.                         case "F": // Float
    293.                         case "D": // Date & Time
    294.                         case "A": // Date
    295.                         case "M": // Time
    296.                             echo "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"20\" />";
    297.                             break;
    298.                         case "T": // Text
    299.                             echo "<textarea class=\"styled\" name=\"$item_name\" cols=\"35\" rows=\"6\" >$get_item_value</textarea>";
    300.                             break;
    301.                         case "C": // Char
    302.                             echo "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"5\" />";
    303.                             break;
    304.                         case "S": // Short Text
    305.                         default: // Default type Short Text
    306.                             echo "<input type=\"text\" class=\"styled\" name=\"$item_name\" value=\"$get_item_value\" size=\"50\" />";
    307.                     }
    308.                 }
    309.                 echo " ".$db->f("parameter_unit");
    310.                 switch( $parameter_type ) {
    311.                     case "D": // Date & Time
    312.                         echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_DATE_FORMAT')." ";
    313.                         echo $VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_TIME_FORMAT').")";
    314.                         break;
    315.                     case "A": // Date
    316.                         echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_DATE_FORMAT').")";
    317.                         break;
    318.                     case "M": // Time
    319.                         echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_TIME_FORMAT').")";
    320.                         break;
    321.                 }
    322.             }
    323.             else { // Break line (type == "B")
    324.                 echo " <hr>";
    325.             }
    326.          
    327.         }
    328.     }
    329.     // Search Button
    330. ?>    
    331.       <div align="center">
    332.         <input type="submit" class="button" name="search" value="<?php echo $VM_LANG->_('PHPSHOP_SEARCH_TITLE') ?>">
    333.         </div>
    334.    
    335. <?php
    336.   } // end - There is a published Product Type
    337. /** Changed Product Type - End */
    338. ?>
    339. </form>
     
  4. Offline

    Skomoroh Недавно здесь

    Регистрация:
    08.01.2011
    Сообщения:
    8
    Симпатии:
    0
    Пол:
    Мужской
    Получается такое. А должно быть в одну строчку (горизонтально)! :'(
     

    Вложения:

  5. vesy
    Offline

    vesy специалист

    Регистрация:
    02.07.2010
    Сообщения:
    263
    Симпатии:
    53
    Пол:
    Мужской
    В вашем php коде формируется форма в таблице. Надо смотреть атрибуты таблицы и удалять их (table, tr, td)
     
    Skomoroh нравится это.
  6. Offline

    Skomoroh Недавно здесь

    Регистрация:
    08.01.2011
    Сообщения:
    8
    Симпатии:
    0
    Пол:
    Мужской
    Всё получилось, но есть одна проблемка - название типа товара надо чтоб было над "Выбрать", а не слева.

    Код (PHP):
    1. <?php
    2. if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
    3. /**
    4. * Virtuemart Product Filter Module
    5. *
    6. * @version $Id: mod_vm_product_filter.php 1109 2010-12-10 10:30:30Z webgobe $
    7. * @package VirtueMart
    8. * @subpackage modules
    9. *
    10. * @copyright (C) 2004-2007 soeren - All Rights reserved.
    11. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
    12. * VirtueMart is Free Software.
    13. * VirtueMart comes with absolute no warranty.
    14. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
    15. *
    16. * www.virtuemart.net
    17. */
    18.  
    19. // Load the virtuemart main parse code
    20.  
    21. global $mosConfig_absolute_path, $sess, $VM_LANG;
    22. // Load the virtuemart main parse code
    23. if( file_exists(dirname(__FILE__).'/../../components/com_virtuemart/virtuemart_parser.php' )) {
    24.     require_once( dirname(__FILE__).'/../../components/com_virtuemart/virtuemart_parser.php' );
    25. } else {
    26.     require_once( dirname(__FILE__).'/../components/com_virtuemart/virtuemart_parser.php' );
    27. }
    28. $sess = new ps_session;
    29. $text_before            = $params->get( 'text_before', '');
    30. $product_type_id= $params->get( 'product_type_id', 1);
    31. $current_url    = vmGet( $_SERVER, 'REQUEST_URI', '' );
    32. $shopItemid     = $sess->getShopItemid();
    33. $Itemid         = $params->get( 'Itemid', $shopItemid);
    34. $db = new ps_DB;
    35. $q  = "SELECT * FROM #__{vm}_product_type ";
    36. $q .= "WHERE product_type_id='$product_type_id' ";
    37. $q .= "AND product_type_publish='Y'";
    38. $db->query($q);
    39.  
    40. $browsepage = $db->f("product_type_browsepage");
    41. echo $text_before;
    42. if (!$db->next_record()) { // There is no published Product Type
    43.         echo $VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_BAD_PRODUCT_TYPE');
    44. } else {
    45.         echo $VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IN_CATEGORY').": ".$db->f("product_type_name");
    46.        
    47. ?>
    48. <form action="<?php echo URL ?>index.php" method="post" name="attr_search" >
    49. <input type="hidden" name="option" value="com_virtuemart"\n />
    50. <input type="hidden" name="page" value="shop.browse" />
    51. <input type="hidden" name="product_type_id" value="<?php echo $product_type_id ?>" />
    52. <input type="hidden" name="Itemid" value="<?php echo $Itemid ?>" />
    53. <?php
    54.     $q  = "SELECT * FROM #__{vm}_product_type_parameter ";
    55.     $q .= "WHERE product_type_id=$product_type_id ";
    56.     $q .= "ORDER BY parameter_list_order";
    57.     $db->query($q);
    58.     ?>
    59.    
    60.     <?php
    61.     if (!empty($browsepage)) { // show browsepage
    62.         /**
    63.         *   Read the template file into a String variable.
    64.         *
    65.         * function read_file( $file, $defaultfile='') ***/
    66.         $template = read_file( PAGEPATH."templates/".$browsepage.".php");
    67.         //$template = str_replace( "{product_type_id}", $product_type_id, $template );  // If you need this, use it...
    68.         while ($db->next_record()) {
    69.             $item_name = "product_type_$product_type_id"."_".$db->f("parameter_name");
    70.             $parameter_values=$db->f("parameter_values");
    71.             $get_item_value = vmGet($_REQUEST, $item_name, "");
    72.             $get_item_value_comp = vmGet($_REQUEST, $item_name."_comp", "");
    73.             $parameter_type = $db->f("parameter_type");
    74.            
    75.             // Replace parameter value
    76.             $template = str_replace( "{".$item_name."_value}", $get_item_value, $template );
    77.                
    78.             // comparison
    79.             if (!empty($parameter_values) && $db->f("parameter_multiselect")=="Y") {
    80.                 if ($parameter_type == "V") { // type: Multiple Values
    81.                     // Multiple section List of values - comparison FIND_IN_SET
    82.                     $comp  = "<td>\n";
    83.                     $comp .= "<select class=\"styled\" name=\"".$item_name."_comp\">\n";
    84.                     $comp .= "<option value=\"find_in_set_all\"".(($get_item_value_comp=="find_in_set_all")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ALL')."</option>\n";
    85.                     $comp .= "<option value=\"find_in_set_any\"".(($get_item_value_comp=="find_in_set_any")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ANY')."</option>\n";
    86.                     $comp .= "</select></td>";
    87.                 }
    88.                 else { // type: all other
    89.                     // Multiple section List of values - no comparison
    90.                     $comp = "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"in\" />\n</td>\n";
    91.                 }
    92.             }
    93.             else {
    94.                 switch( $parameter_type ) {
    95.                     case "C": // Char
    96.                         if (!empty($parameter_values)) { // List of values - no comparison
    97.                             $comp = "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"eq\" />\n";
    98.                             break;
    99.                         }
    100.                    
    101.                         $comp  = "<select class=\"styled\" name=\"".$item_name."_comp\">\n";
    102.                         $comp .= "<option value=\"lt\"".(($get_item_value_comp=="lt")?" selected":"").">&lt;</option>\n";
    103.                         $comp .= "<option value=\"le\"".(($get_item_value_comp=="le")?" selected":"").">&lt;=</option>\n";
    104.                         $comp .= "<option value=\"eq\"".(($get_item_value_comp=="eq")?" selected":"").">=</option>\n";
    105.                         $comp .= "<option value=\"ge\"".((empty($get_item_value_comp)||$get_item_value_comp=="ge")?" selected":"").">&gt;=</option>\n";
    106.                         $comp .= "<option value=\"gt\"".(($get_item_value_comp=="gt")?" selected":"").">&gt;</option>\n";
    107.                         $comp .= "<option value=\"ne\"".(($get_item_value_comp=="ne")?" selected":"").">&lt;&gt;</option>\n";
    108.                         $comp .= "</select>\n";
    109.                         break;
    110.                     case "T": // Text
    111.                         if (!empty($parameter_values)) { // List of values - no comparison
    112.                             $comp = "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" />\n";
    113.                             break;
    114.                         }
    115.                         $comp  = "<select class=\"styled\" name=\"".$item_name."_comp\">\n";
    116.                         $comp .= "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>\n";
    117.                         $comp .= "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>\n";
    118.                         $comp .= "<option value=\"fulltext\"".(($get_item_value_comp=="fulltext")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FULLTEXT')."</option>\n";
    119.                         $comp .= "</select>";
    120.                         break;
    121.                     case "S": // Short Text
    122.                     default:  // Default type Short Text
    123.                         if (!empty($parameter_values)) { // List of values - no comparison
    124.                             $comp = "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" />\n";
    125.                             break;
    126.                         }
    127.                         $comp  = "<select class=\"styled\" name=\"".$item_name."_comp\">\n";
    128.                         $comp .= "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>\n";
    129.                         $comp .= "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>\n";
    130.                         $comp .= "</select></td>";
    131.                 }
    132.             }
    133.             // Relace parameter comparison
    134.             $template = str_replace( "{".$item_name."_comp}", $comp, $template );
    135.            
    136.             // Parameter field
    137.             if (!empty($parameter_values)) { // List of values
    138.                 $fields=explode(";",$parameter_values);
    139.                 $attr = "<select class=\"styled\" name=\"$item_name";
    140.                 if ($db->f("parameter_multiselect")=="Y") {
    141.                     $size = min(count($fields),6);
    142.                     $attr .= "[]\" multiple size=\"$size\">\n";
    143.                     $selected_value = array();
    144.                     $get_item_value = vmGet($_REQUEST, $item_name, array());
    145.                     foreach($get_item_value as $value) {
    146.                         $selected_value[$value] = 1;
    147.                     }
    148.                     foreach($fields as $field) {
    149.                         $attr .= "<option value=\"$field\"".(($selected_value[$field]==1) ? " selected>" : ">"). $field."</option>\n";
    150.                     }
    151.                 }
    152.                 else {
    153.                     $attr .= "\">\n";
    154.                     $attr .= "<option value=\"\">".$VM_LANG->_('PHPSHOP_SELECT')."</option>\n";
    155.                     foreach($fields as $field) {
    156.                         $attr .= "<option value=\"$field\"".(($get_item_value==$field) ? " selected>" : ">"). $field."</option>\n";
    157.                     }
    158.                 }
    159.                 $attr .= "</select>";
    160.             }
    161.             else { // Input field                  
    162.                 switch( $parameter_type ) {
    163.                     case "I": // Integer
    164.                     case "F": // Float
    165.                     case "D": // Date & Time
    166.                     case "A": // Date
    167.                     case "M": // Time
    168.                         $attr = "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"20\" />";
    169.                         break;
    170.                     case "T": // Text
    171.                         $attr = "<textarea class=\"styled\" name=\"$item_name\" cols=\"35\" rows=\"6\" >$get_item_value</textarea>";
    172.                         break;
    173.                     case "C": // Char
    174.                         $attr = "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"5\" />";
    175.                         break;
    176.                     case "S": // Short Text
    177.                     default: // Default type Short Text
    178.                         $attr = "<input type=\"text\" class=\"styled\" name=\"$item_name\" value=\"$get_item_value\" size=\"50\" />";
    179.                 }
    180.             }
    181.             // Relace parameter
    182.             $template = str_replace( "{".$item_name."}", $attr, $template );
    183.         }
    184.         echo $template;
    185.     }
    186.     else { // show default list of parameters
    187.        
    188.         while ($db->next_record()) {
    189.             $parameter_type = $db->f("parameter_type");
    190.             if ($parameter_type!="B") {
    191.                 echo "<tr>\n  <td   ><strong>";
    192.                 echo $db->f("parameter_label");
    193.                 echo "&nbsp;:</strong>\n  </td>\n";
    194.                
    195.                 $parameter_values=$db->f("parameter_values");
    196.                 $item_name = "product_type_$product_type_id"."_".$db->f("parameter_name");
    197.                 $get_item_value = vmGet($_REQUEST, $item_name, "");
    198.                 $get_item_value_comp = vmGet($_REQUEST, $item_name."_comp", "");
    199.                
    200.                 // comparison
    201.                 if (!empty($parameter_values) && $db->f("parameter_multiselect")=="Y") {
    202.                     if ($parameter_type == "V") { // type: Multiple Values
    203.                         // Multiple section List of values - comparison FIND_IN_SET
    204.                         echo "<td >\n";
    205.                         echo "<select class=\"styled\" name=\"".$item_name."_comp\">\n";
    206.                         echo "<option value=\"find_in_set_all\"".(($get_item_value_comp=="find_in_set_all")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ALL')."</option>\n";
    207.                         echo "<option value=\"find_in_set_any\"".(($get_item_value_comp=="find_in_set_any")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FIND_IN_SET_ANY')."</option>\n";
    208.                         echo "</select></td>";
    209.                     }
    210.                     else { // type: all other
    211.                         // Multiple section List of values - no comparison
    212.                         echo "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"in\" />\n</td>\n";
    213.                     }
    214.                 }
    215.                 else {
    216.                     switch( $parameter_type ) {
    217.                         case "C": // Char
    218.                             if (!empty($parameter_values)) { // List of values - no comparison
    219.                                 echo "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"eq\" />\n</td>\n";
    220.                                 break;
    221.                             }
    222.                         case "I": // Integer
    223.                         case "F": // Float
    224.                         case "D": // Date & Time
    225.                         case "A": // Date
    226.                         case "M": // Time
    227.                             echo "<td >\n";
    228.                             echo "<select class=\"styled\" name=\"".$item_name."_comp\">\n";
    229.                             echo "<option value=\"lt\"".(($get_item_value_comp=="lt")?" selected":"").">&lt;</option>\n";
    230.                             echo "<option value=\"le\"".(($get_item_value_comp=="le")?" selected":"").">&lt;=</option>\n";
    231.                             echo "<option value=\"eq\"".(($get_item_value_comp=="eq")?" selected":"").">=</option>\n";
    232.                             echo "<option value=\"ge\"".((empty($get_item_value_comp)||$get_item_value_comp=="ge")?" selected":"").">&gt;=</option>\n";
    233.                             echo "<option value=\"gt\"".(($get_item_value_comp=="gt")?" selected":"").">&gt;</option>\n";
    234.                             echo "<option value=\"ne\"".(($get_item_value_comp=="ne")?" selected":"").">&lt;&gt;</option>\n";
    235.                             echo "</select></td>";
    236.                             break;
    237.                         case "T": // Text
    238.                             if (!empty($parameter_values)) { // List of values - no comparison
    239.                                 echo "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" />\n</td>\n";
    240.                                 break;
    241.                             }
    242.                             echo "<td>\n";
    243.                             echo "<select class=\"styled\" name=\"".$item_name."_comp\">\n";
    244.                             echo "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>\n";
    245.                             echo "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>\n";
    246.                             echo "<option value=\"fulltext\"".(($get_item_value_comp=="fulltext")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FULLTEXT')."</option>\n";
    247.                             echo "</select></td>";
    248.                             break;
    249.                         case "V": // Multiple Value
    250.                             echo "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"find_in_set\" />\n</td>\n";
    251.                             break;
    252.                         case "S": // Short Text
    253.                         default:  // Default type Short Text
    254.                             if (!empty($parameter_values)) { // List of values - no comparison
    255.                                 echo "<td><input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" />\n</td>\n";
    256.                                 break;
    257.                             }
    258.                             echo "<td>\n";
    259.                             echo "<select class=\"styled\" name=\"".$item_name."_comp\">\n";
    260.                             echo "<option value=\"like\"".(($get_item_value_comp=="like")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>\n";
    261.                             echo "<option value=\"notlike\"".(($get_item_value_comp=="notlike")?" selected":"").">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>\n";
    262.                             echo "</select></td>";
    263.                     }
    264.                 }
    265.                
    266.                 if (!empty($parameter_values)) { // List of values
    267.                     $fields=explode(";",$parameter_values);
    268.                     echo "<td  >\n";
    269.                     echo "<select class=\"styled\" name=\"$item_name";
    270.                     if ($db->f("parameter_multiselect")=="Y") {
    271.                         $size = min(count($fields),6);
    272.                         echo "[]\" multiple size=\"$size\">\n";
    273.                         $selected_value = array();
    274.                         $get_item_value = vmGet($_REQUEST, $item_name, array());
    275.                         foreach($get_item_value as $value) {
    276.                             $selected_value[$value] = 1;
    277.                         }
    278.                         foreach($fields as $field) {
    279.                             echo "<option value=\"$field\"".(($selected_value[$field]==1) ? " selected>" : ">"). $field."</option>\n";
    280.                         }
    281.                     }
    282.                     else {
    283.                         echo "\">\n";
    284.                         echo "<option value=\"\">".$VM_LANG->_('PHPSHOP_SELECT')."</option>\n";
    285.                         foreach($fields as $field) {
    286.                             echo "<option value=\"$field\"".(($get_item_value==$field) ? " selected>" : ">"). $field."</option>\n";
    287.                         }
    288.                     }
    289.                     echo "</select>";
    290.                 }
    291.                 else { // Input field                  
    292.                     echo "<td >\n";
    293.                     switch( $parameter_type ) {
    294.                         case "I": // Integer
    295.                         case "F": // Float
    296.                         case "D": // Date & Time
    297.                         case "A": // Date
    298.                         case "M": // Time
    299.                             echo "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"20\" />";
    300.                             break;
    301.                         case "T": // Text
    302.                             echo "<textarea class=\"styled\" name=\"$item_name\" cols=\"35\" rows=\"6\" >$get_item_value</textarea>";
    303.                             break;
    304.                         case "C": // Char
    305.                             echo "<input type=\"text\" class=\"styled\"  name=\"$item_name\" value=\"$get_item_value\" size=\"5\" />";
    306.                             break;
    307.                         case "S": // Short Text
    308.                         default: // Default type Short Text
    309.                             echo "<input type=\"text\" class=\"styled\" name=\"$item_name\" value=\"$get_item_value\" size=\"50\" />";
    310.                     }
    311.                 }
    312.                 echo " ".$db->f("parameter_unit");
    313.                 switch( $parameter_type ) {
    314.                     case "D": // Date & Time
    315.                         echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_DATE_FORMAT')." ";
    316.                         echo $VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_TIME_FORMAT').")";
    317.                         break;
    318.                     case "A": // Date
    319.                         echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_DATE_FORMAT').")";
    320.                         break;
    321.                     case "M": // Time
    322.                         echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_TIME_FORMAT').")";
    323.                         break;
    324.                 }
    325.             }
    326.             else { // Break line (type == "B")
    327.                 echo "<tr>\n  <td><hr>";
    328.             }
    329.             echo "  </td>\n</tr>";
    330.         }
    331.     }
    332.     // Search Button
    333. ?> 
    334.     <tr ><td >
    335.         <input type="submit" class="button" name="search" value="<?php echo $VM_LANG->_('PHPSHOP_SEARCH_TITLE') ?>">
    336.         </td>
    337.     </tr>
    338.  
    339. <?php
    340.   } // end - There is a published Product Type
    341. /** Changed Product Type - End */
    342. ?>
    343. </form>
     

    Вложения:

  7. vesy
    Offline

    vesy специалист

    Регистрация:
    02.07.2010
    Сообщения:
    263
    Симпатии:
    53
    Пол:
    Мужской
    Тогда надо снова возвращаться к таблицам. Но так тяжелее будет. Легче обернуть метку в div и поле в div, а потом их в вместе в div с float:left
     
  8. Offline

    Skomoroh Недавно здесь

    Регистрация:
    08.01.2011
    Сообщения:
    8
    Симпатии:
    0
    Пол:
    Мужской
    А поподробнее???
     

Поделиться этой страницей

Загрузка...