Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Using the same declare twice?


lindsayanng

Recommended Posts

basically, i am trying to use the MORE_CATEGORIES code twice.. once in my left column, and then the OTHER one in my index main table.. The one of the left is the basic with no "icons" and i was going to the use the one in the center to show the categories on the main page as thumbnail images.. I liked how the MORE CATEGORIES broke them out into separate boxes because there are lots of categories.. so i figured if i used the code with the icons in it for the main section, and just configured the layout and size of the images, everything would be fine and dandy..

 

my issue is that when i use the code for the second time, i get this error"

 

Fatal error: Cannot redeclare new_tep_show_category() (previously declared in /home1/leftcoa3/public_html/catalog/includes/boxes/more_categories.php:13) in /home1/leftcoa3/public_html/catalog/includes/modules/main_categories.php on line 120

 

What do i do to make this work for me??

 

Thanks in advance!

A great place for newbies to start

Road Map to oscommerce File Structure

DO NOT PM ME FOR HELP. My time is valuable, unless i ask you to PM me, please dont. You will get better help if you post publicly. I am not as good at this as you think anyways!

 

HOWEVER, you can visit my blog (go to my profile to see it) and post a question there, i will find time to get back and answer you

 

Proud Memeber of the CODE BREAKERS CLUB!!

Link to comment
Share on other sites

oops.. forgot.. this is the code that i am using for the MAIN, which is pretty much identical to the right column categories box.. I thought that removing the function at the top would help, but it didnt.. any help is GREATLY appreciated.

 

<?php
/*
 $Id: categories.php,v 1.25 2003/07/09 01:13:58 hpdl Exp $

 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

//  function new_tep_show_category($boxId,&$cPath_array,&$tree,$counter)
 {
global $cat_name; // CategoryBox Enhancement
for ($i=0; $i<$tree[$counter]['level']; $i++)

  $categories_string = "  ";

//	$cPath_new = 'cPath=' . $tree[$counter]['path'];  // CategoryBox Enhancement
$categories_string .= '<a href="';

if ($tree[$counter]['parent'] == 0)

  $cPath_new = 'cPath=' . $counter;

else

  $cPath_new = 'cPath=' . $tree[$counter]['path'];

//	$categories_string .= tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">';  // CategoryBox Enhancement
$categories_string .= tep_href_link(FILENAME_DEFAULT, 'infoBox=' . $boxId . '&' . $cPath_new) . '">';


// CategoryBox Enhancement
if (tep_has_category_subcategories($counter)) {
  $categories_string .= tep_image(DIR_WS_IMAGES . 'arrw1_L.gif', '');
}
else {
  $categories_string .= tep_image(DIR_WS_IMAGES . 'arrw2_L.gif', '');
}
// CategoryBox Enhancement

// display category name

/* uncomment this section if you want the little arrows to the left of the categories  
if (tep_has_category_subcategories($counter)) {
  $categories_string .= tep_image(DIR_WS_IMAGES . 'pointer_blue.gif', '');
}
else {
  $categories_string .= tep_image(DIR_WS_IMAGES . 'pointer_blue_light.gif', '');
}
/* end section  */

if ($boxId == $_SESSION['infoBox'] && isset($cPath_array) && in_array($counter, $cPath_array))
{

// commented for CategoryBox Enhancement	  $categories_string .= '<b>' . $tree[$counter]['name'] . '</b>';
  $categories_string .= '<b>';

// CategoryBox Enhancement  
  if ($cat_name == $tree[$counter]['name']) {
	$categories_string .= '<span class="errorText">';
	 }
// CategoryBox Enhancement  

  $categories_string .= $tree[$counter]['name'];

// CategoryBox Enhancement		
	if ($cat_name == $tree[$counter]['name']) {
		$categories_string .= '</span>';
	   }
// CategoryBox Enhancement	  

  $categories_string .= '</b>';
 }

else
{
// CategoryBox Enhancement  
  if ($cat_name == $tree[$counter]['name']) {
	$categories_string .= '<b><span class="errorText">';
	 }
// CategoryBox Enhancement  

  $categories_string .= $tree[$counter]['name'];

// CategoryBox Enhancement		
	if ($cat_name == $tree[$counter]['name']) {
		$categories_string .= '</span></b>';
	   }
// CategoryBox Enhancement		
}

/* commented for CategoryBox Enhancement
if (tep_has_category_subcategories($counter))

  $categories_string .= '->';
*/

$categories_string .= '</a>';

if (SHOW_COUNTS == 'true') {

  $products_in_category = tep_count_products_in_category($counter);

  if ($products_in_category > 0)

	$categories_string .= ' (' . $products_in_category . ')';

}

$categories_string .= '<br>';

if ($tree[$counter]['next_id'] != false)

  $categories_string .= new_tep_show_category($boxId,$cPath_array,$tree,$tree[$counter]['next_id']);

return $categories_string;
 }

 function tep_categories_box($boxId,&$infoBox,$follow_cPath,&$cPath_array)
 {
global $languages_id;

$info_box_contents = array();
$info_box_contents[] = array('text' => $infoBox['name']);

new infoBoxHeading($info_box_contents, true, false);

$tree = array();

$categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '0' and c.categories_id in (".implode(',',$infoBox['categories']).") and c.categories_id = cd.categories_id and cd.language_id='" . (int)$languages_id ."' order by sort_order, cd.categories_name");
while ($categories = tep_db_fetch_array($categories_query)) {

  $tree[$categories['categories_id']] = array(
	'name' => $categories['categories_name'],
	'parent' => $categories['parent_id'],
	'level' => 0,
	'path' => $categories['categories_id'],
	'next_id' => false
  );

  if (isset($parent_id))
	$tree[$parent_id]['next_id'] = $categories['categories_id'];

  $parent_id = $categories['categories_id'];

  if (!isset($first_element))
	$first_element = $categories['categories_id'];

}

//------------------------
if ($follow_cPath) {

  $new_path = '';

  reset($cPath_array);

  while (list($key, $value) = each($cPath_array)) {

	unset($parent_id);
	unset($first_id);

	$categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$value . "' and c.categories_id = cd.categories_id and cd.language_id='" . (int)$languages_id ."' order by sort_order, cd.categories_name");

	if (tep_db_num_rows($categories_query)) {

	  $new_path .= $value;

	  while($row = tep_db_fetch_array($categories_query)) {

		$tree[$row['categories_id']] = array(
		  'name' => $row['categories_name'],
		  'parent' => $row['parent_id'],
		  'level' => $key+1,
		  'path' => $new_path . '_' . $row['categories_id'],
		  'next_id' => false
		);

		if (isset($parent_id))

		  $tree[$parent_id]['next_id'] = $row['categories_id'];


		$parent_id = $row['categories_id'];

		if (!isset($first_id))

		  $first_id = $row['categories_id'];


		$last_id = $row['categories_id'];

	  }

	  $tree[$last_id]['next_id'] = $tree[$value]['next_id'];

	  $tree[$value]['next_id'] = $first_id;

	  $new_path .= '_';

	} else {

	  break;

	}

  }

}

$info_box_contents = array();
$info_box_contents[] = array('text' => new_tep_show_category($boxId,$cPath_array,$tree,$first_element));

new infoBox($info_box_contents);
 }

?>
<!-- categories //-->
<?php

 $_infoBox = array();

//  define('TABLE_CATEGORIES_MORE','categories_more');

 $categories_this_infobox_query = tep_db_query("select * from " . TABLE_CATEGORIES_MORE . " where enabled = 1");

 while ($_categories = tep_db_fetch_array($categories_this_infobox_query))

$_infoBox[] = array(
  'categories' => array(
	$_categories['category1_id'],
	$_categories['category2_id'],
	$_categories['category3_id'],
	$_categories['category4_id'],
	$_categories['category5_id'],
	$_categories['category6_id'],
	$_categories['category7_id'],
	$_categories['category8_id'],
	$_categories['category9_id'],
	$_categories['category10_id'],
	$_categories['category11_id'],
	$_categories['category12_id'],
	$_categories['category13_id'],
	$_categories['category14_id'],
	$_categories['category15_id'],
	$_categories['category16_id'],
	$_categories['category17_id'],
	$_categories['category18_id'],
	$_categories['category19_id'],
	$_categories['category20_id'],
	$_categories['category21_id'],
	$_categories['category22_id'],
	$_categories['category23_id'],
	$_categories['category24_id'],
	$_categories['category25_id'],
  ),
  'name'	=> $_categories['infobox_name'],
  'enabled' => $_categories['enabled']
);

 if (!tep_session_is_registered('infoBox')) {

tep_session_register('infoBox');

$infoBox = '0';

 }

if (isset($_GET['infoBox']) && is_numeric($_GET['infoBox']))
   $infoBox = $_GET['infoBox'];

 for($i=0,$n=count($_infoBox); $i<$n; $i++) {

echo "<tr>\n<td>\n";

tep_categories_box(
  $i,
  $_infoBox[$i],
  ($infoBox == $i && tep_not_null($cPath)) ? true : false,
  $cPath_array
);

echo "\n</td>\n</tr>\n";

 }
?>
<!-- categories_eof //-->

A great place for newbies to start

Road Map to oscommerce File Structure

DO NOT PM ME FOR HELP. My time is valuable, unless i ask you to PM me, please dont. You will get better help if you post publicly. I am not as good at this as you think anyways!

 

HOWEVER, you can visit my blog (go to my profile to see it) and post a question there, i will find time to get back and answer you

 

Proud Memeber of the CODE BREAKERS CLUB!!

Link to comment
Share on other sites

In the file you posted, change this line:

 

//  function new_tep_show_category($boxId,&$cPath_array,&$tree,$counter)

to

 

  function new_tep_show_category2($boxId,&$cPath_array,&$tree,$counter)

Note that I changed the name of the function to new_tep_show_category2

 

The change all references to the function in the rest of the file to match.

 

I'm thinking that will work.

If I suggest you edit any file(s) make a backup first - I'm not perfect and neither are you.

 

"Given enough impetus a parallelogramatically shaped projectile can egress a circular orifice."

- Me -

 

"Headers already sent" - The definitive help

 

"Cannot redeclare ..." - How to find/fix it

 

SSL Implementation Help

 

Like this post? "Like" it again over there >

Link to comment
Share on other sites

I tried changing the category to categories and it didnt work, HOWEVER i will do it again because i didnt write down the new error.

A great place for newbies to start

Road Map to oscommerce File Structure

DO NOT PM ME FOR HELP. My time is valuable, unless i ask you to PM me, please dont. You will get better help if you post publicly. I am not as good at this as you think anyways!

 

HOWEVER, you can visit my blog (go to my profile to see it) and post a question there, i will find time to get back and answer you

 

Proud Memeber of the CODE BREAKERS CLUB!!

Link to comment
Share on other sites

posted wrong code.. OOPS

A great place for newbies to start

Road Map to oscommerce File Structure

DO NOT PM ME FOR HELP. My time is valuable, unless i ask you to PM me, please dont. You will get better help if you post publicly. I am not as good at this as you think anyways!

 

HOWEVER, you can visit my blog (go to my profile to see it) and post a question there, i will find time to get back and answer you

 

Proud Memeber of the CODE BREAKERS CLUB!!

Link to comment
Share on other sites

Working now.. thought it worked but it didnt

A great place for newbies to start

Road Map to oscommerce File Structure

DO NOT PM ME FOR HELP. My time is valuable, unless i ask you to PM me, please dont. You will get better help if you post publicly. I am not as good at this as you think anyways!

 

HOWEVER, you can visit my blog (go to my profile to see it) and post a question there, i will find time to get back and answer you

 

Proud Memeber of the CODE BREAKERS CLUB!!

Link to comment
Share on other sites

Ok.. can you check this.. i might have missed on.. here is the REAL code

<?php
/*
 $Id: categories.php,v 1.25 2003/07/09 01:13:58 hpdl Exp $

 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 function new_tep_show_category2($boxId,&$cPath_array,&$tree,$counter)
 {
global $cat_name; // CategoryBox Enhancement
for ($i=0; $i<$tree[$counter]['level']; $i++)

  $categories_string = "  ";

//	$cPath_new = 'cPath=' . $tree[$counter]['path'];  // CategoryBox Enhancement
$categories_string .= '<a href="';

if ($tree[$counter]['parent'] == 0)

  $cPath_new = 'cPath=' . $counter;

else

  $cPath_new = 'cPath=' . $tree[$counter]['path'];

//	$categories_string .= tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">';  // CategoryBox Enhancement
$categories_string .= tep_href_link(FILENAME_DEFAULT, 'infoBox=' . $boxId . '&' . $cPath_new) . '">';


// CategoryBox Enhancement
if (tep_has_category2_subcategories($counter, 'image')) {
  $categories_string .= tep_image(DIR_WS_IMAGES . $tree[$counter]['image'], $tree[$counter]['name'], '30', '30');
}
else {
  $categories_string .= tep_image(DIR_WS_IMAGES . $tree[$counter]['image'], $tree[$counter]['name'], '30', '30');
}
if (isset($cPath_array) && in_array($counter, $cPath_array)) {
  $categories_string .= '</b>';
}	
// CategoryBox Enhancement

// display category name

/* uncomment this section if you want the little arrows to the left of the categories  
if (tep_has_category_subcategories($counter)) {
  $categories_string .= tep_image(DIR_WS_IMAGES . 'pointer_blue.gif', '');
}
else {
  $categories_string .= tep_image(DIR_WS_IMAGES . 'pointer_blue_light.gif', '');
}
/* end section  */

if ($boxId == $_SESSION['infoBox'] && isset($cPath_array) && in_array($counter, $cPath_array))
{

// commented for CategoryBox Enhancement	  $categories_string .= '<b>' . $tree[$counter]['name'] . '</b>';
  $categories_string .= '<b>';

// CategoryBox Enhancement  
  if ($cat_name == $tree[$counter]['name']) {
	$categories_string .= '<span class="errorText">';
	 }
// CategoryBox Enhancement  

  $categories_string .= $tree[$counter]['name'];

// CategoryBox Enhancement		
	if ($cat_name == $tree[$counter]['name']) {
		$categories_string .= '</span>';
	   }
// CategoryBox Enhancement	  

  $categories_string .= '</b>';
 }

else
{
// CategoryBox Enhancement  
  if ($cat_name == $tree[$counter]['name']) {
	$categories_string .= '<b><span class="errorText">';
	 }
// CategoryBox Enhancement  

  $categories_string .= $tree[$counter]['name'];

// CategoryBox Enhancement		
	if ($cat_name == $tree[$counter]['name']) {
		$categories_string .= '</span></b>';
	   }
// CategoryBox Enhancement		
}

/* commented for CategoryBox Enhancement
if (tep_has_category_subcategories($counter))

  $categories_string .= '->';
*/

$categories_string .= '</a>';

if (SHOW_COUNTS == 'true') {

  $products_in_category = tep_count_products_in_category2($counter);

  if ($products_in_category > 0)

	$categories_string .= ' (' . $products_in_category . ')';

}

$categories_string .= '<br>';

if ($tree[$counter]['next_id'] != false)

  $categories_string .= new_tep_show_category2($boxId,$cPath_array,$tree,$tree[$counter]['next_id']);

return $categories_string;
 }

 function tep_categories_box($boxId,&$infoBox,$follow_cPath,&$cPath_array)
 {
global $languages_id;

$info_box_contents = array();
$info_box_contents[] = array('text' => $infoBox['name']);

new infoBoxHeading($info_box_contents, true, false);

$tree = array();

$categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '0' and c.categories_id in (".implode(',',$infoBox['categories']).") and c.categories_id = cd.categories_id and cd.language_id='" . (int)$languages_id ."' order by sort_order, cd.categories_name");
while ($categories = tep_db_fetch_array($categories_query)) {

  $tree[$categories['categories_id']] = array(
	'name' => $categories['categories_name'],
	'image' => $categories['categories_image'],
	'parent' => $categories['parent_id'],
	'level' => 0,
	'path' => $categories['categories_id'],
	'next_id' => false
  );

  if (isset($parent_id))
	$tree[$parent_id]['next_id'] = $categories['categories_id'];

  $parent_id = $categories['categories_id'];

  if (!isset($first_element))
	$first_element = $categories['categories_id'];

}

//------------------------
if ($follow_cPath) {

  $new_path = '';

  reset($cPath_array);

  while (list($key, $value) = each($cPath_array)) {

	unset($parent_id);
	unset($first_id);

	$categories_query = tep_db_query("select c.categories_id, c.categories_image, cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$value . "' and c.categories_id = cd.categories_id and cd.language_id='" . (int)$languages_id ."' order by sort_order, cd.categories_name");

	if (tep_db_num_rows($categories_query)) {

	  $new_path .= $value;

	  while($row = tep_db_fetch_array($categories_query)) {

		$tree[$row['categories_id']] = array(
		  'name' => $row['categories_name'],
		  'image' => $row['categories_image'],
		  'parent' => $row['parent_id'],
		  'level' => $key+1,
		  'path' => $new_path . '_' . $row['categories_id'],
		  'next_id' => false
		);

		if (isset($parent_id))

		  $tree[$parent_id]['next_id'] = $row['categories_id'];


		$parent_id = $row['categories_id'];

		if (!isset($first_id))

		  $first_id = $row['categories_id'];


		$last_id = $row['categories_id'];

	  }

	  $tree[$last_id]['next_id'] = $tree[$value]['next_id'];

	  $tree[$value]['next_id'] = $first_id;

	  $new_path .= '_';

	} else {

	  break;

	}

  }

}

$info_box_contents = array();
$info_box_contents[] = array('text' => new_tep_show_category2($boxId,$cPath_array,$tree,$first_element));

new infoBox($info_box_contents);
 }

?>
<!-- categories //-->
<?php

 $_infoBox = array();

//  define('TABLE_CATEGORIES_MORE','categories_more');

 $categories_this_infobox_query = tep_db_query("select * from " . TABLE_CATEGORIES_MORE . " where enabled = 1");

 while ($_categories = tep_db_fetch_array($categories_this_infobox_query))

$_infoBox[] = array(
  'categories' => array(
	$_categories['category1_id'],
	$_categories['category2_id'],
	$_categories['category3_id'],
	$_categories['category4_id'],
	$_categories['category5_id'],
	$_categories['category6_id'],
	$_categories['category7_id'],
	$_categories['category8_id'],
	$_categories['category9_id'],
	$_categories['category10_id'],
	$_categories['category11_id'],
	$_categories['category12_id'],
	$_categories['category13_id'],
	$_categories['category14_id'],
	$_categories['category15_id'],
	$_categories['category16_id'],
	$_categories['category17_id'],
	$_categories['category18_id'],
	$_categories['category19_id'],
	$_categories['category20_id'],
	$_categories['category21_id'],
	$_categories['category22_id'],
	$_categories['category23_id'],
	$_categories['category24_id'],
	$_categories['category25_id'],
  ),
  'name'	=> $_categories['infobox_name'],
  'enabled' => $_categories['enabled']
);

 if (!tep_session_is_registered('infoBox')) {

tep_session_register('infoBox');

$infoBox = '0';

 }

if (isset($_GET['infoBox']) && is_numeric($_GET['infoBox']))
   $infoBox = $_GET['infoBox'];

 for($i=0,$n=count($_infoBox); $i<$n; $i++) {

echo "<tr>\n<td>\n";

tep_categories_box(
  $i,
  $_infoBox[$i],
  ($infoBox == $i && tep_not_null($cPath)) ? true : false,
  $cPath_array
);

echo "\n</td>\n</tr>\n";

 }
?>
<!-- categories_eof //-->

A great place for newbies to start

Road Map to oscommerce File Structure

DO NOT PM ME FOR HELP. My time is valuable, unless i ask you to PM me, please dont. You will get better help if you post publicly. I am not as good at this as you think anyways!

 

HOWEVER, you can visit my blog (go to my profile to see it) and post a question there, i will find time to get back and answer you

 

Proud Memeber of the CODE BREAKERS CLUB!!

Link to comment
Share on other sites

I love you!!! I do feel good knowing iw as on the right track

 

next up.. Show a larger image AND show in a grid format

A great place for newbies to start

Road Map to oscommerce File Structure

DO NOT PM ME FOR HELP. My time is valuable, unless i ask you to PM me, please dont. You will get better help if you post publicly. I am not as good at this as you think anyways!

 

HOWEVER, you can visit my blog (go to my profile to see it) and post a question there, i will find time to get back and answer you

 

Proud Memeber of the CODE BREAKERS CLUB!!

Link to comment
Share on other sites

I love you!!! I do feel good knowing iw as on the right track

:wub:

 

Does that mean it's working?

:unsure:

If I suggest you edit any file(s) make a backup first - I'm not perfect and neither are you.

 

"Given enough impetus a parallelogramatically shaped projectile can egress a circular orifice."

- Me -

 

"Headers already sent" - The definitive help

 

"Cannot redeclare ..." - How to find/fix it

 

SSL Implementation Help

 

Like this post? "Like" it again over there >

Link to comment
Share on other sites

it is working.. I got the images larger, just need to get them to show as a grid instead of a list now.

A great place for newbies to start

Road Map to oscommerce File Structure

DO NOT PM ME FOR HELP. My time is valuable, unless i ask you to PM me, please dont. You will get better help if you post publicly. I am not as good at this as you think anyways!

 

HOWEVER, you can visit my blog (go to my profile to see it) and post a question there, i will find time to get back and answer you

 

Proud Memeber of the CODE BREAKERS CLUB!!

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...