Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Admin Access Failing, was workin fine and now.....


toyzonline

Recommended Posts

Posted

Hi there,

 

I have been adding a few contrib's while populating the store. I have always made a back up first and not had any issues. The Admin was working fine yesterday but now we are getting the following error:

 

 

Fatal error: Call to undefined function tep_href_link() in /home/********/public_html/admin/index.php on line 17

 

 

I have used all bckup versions I have of this file and even tried uploading the original one but all to no avail, the line it is reffering to is as below:

 

                     'href' => tep_href_link(FILENAME_CONFIGURATION, 'selected_box=configuration&gID=1'),

Complete Newbie On The Learn - Not A Programmer

But Learning As I Go

Posted

Hi Nic had a look and not sure how that topic helps.....sorry i maybe overlooking the obvious..or just plain dumb

 

no you're not dumb!

The post refers to your html_output.php which could be the cause of your problem.

what add ons were you installing when it went wrong?

Also it might possibly be caused by changes to the Dbase

Nic

Sometimes you're the dog and sometimes the lamp post

[/url]

My Contributions

Posted

no you're not dumb!

The post refers to your html_output.php which could be the cause of your problem.

what add ons were you installing when it went wrong?

Also it might possibly be caused by changes to the Dbase

Nic

 

I was trying to add a multi image add on but then realised it would not work due to the fact I have a light box type effect installed. If i added some queries to DB, would backing it up to a previous version help?

 

The only DB alteration was:

 

ALTER TABLE `products` ADD `products_slide_images` TEXT NOT NULL ;

Complete Newbie On The Learn - Not A Programmer

But Learning As I Go

Posted

No this should not effect the menu, the configuration menu in osC is help in TABLE_CONFIGURATION and CONFIGURATION_GROUP.

 

the errro Fatal error: Call to undefined function tep_href_link() means the function does not exist,

 

check your admin / includes / functions / html_output.php for the following function

 

// The HTML href link wrapper function
function tep_href_link($page = '', $parameters = '', $connection = 'NONSSL') {
if ($page == '') {
	die('</td></tr></table></td></tr></table>

<font color="#ff0000"><b>Error!</b></font>

<b>Unable to determine the page link!

Function used:

tep_href_link(\'' . $page . '\', \'' . $parameters . '\', \'' . $connection . '\')</b>');
}
if ($connection == 'NONSSL') {
	$link = HTTP_SERVER . DIR_WS_ADMIN;
} elseif ($connection == 'SSL') {
	if (ENABLE_SSL == 'true') {
	$link = HTTPS_SERVER . DIR_WS_ADMIN;
	} else {
	$link = HTTP_SERVER . DIR_WS_ADMIN;
	}
} else {
	die('</td></tr></table></td></tr></table>

<font color="#ff0000"><b>Error!</b></font>

<b>Unable to determine connection method on a link!

Known methods: NONSSL SSL

Function used:

tep_href_link(\'' . $page . '\', \'' . $parameters . '\', \'' . $connection . '\')</b>');
}
if ($parameters == '') {
	$link = $link . $page . '?' . SID;
} else {
	$link = $link . $page . '?' . $parameters . '&' . SID;
}

while ( (substr($link, -1) == '&') || (substr($link, -1) == '?') ) $link = substr($link, 0, -1);

return $link;
}

 

Nic

Sometimes you're the dog and sometimes the lamp post

[/url]

My Contributions

Posted

No this should not effect the menu, the configuration menu in osC is help in TABLE_CONFIGURATION and CONFIGURATION_GROUP.

 

the errro Fatal error: Call to undefined function tep_href_link() means the function does not exist,

 

check your admin / includes / functions / html_output.php for the following function

 

// The HTML href link wrapper function
function tep_href_link($page = '', $parameters = '', $connection = 'NONSSL') {
if ($page == '') {
	die('</td></tr></table></td></tr></table>

<font color="#ff0000"><b>Error!</b></font>

<b>Unable to determine the page link!

Function used:

tep_href_link(\'' . $page . '\', \'' . $parameters . '\', \'' . $connection . '\')</b>');
}
if ($connection == 'NONSSL') {
	$link = HTTP_SERVER . DIR_WS_ADMIN;
} elseif ($connection == 'SSL') {
	if (ENABLE_SSL == 'true') {
	$link = HTTPS_SERVER . DIR_WS_ADMIN;
	} else {
	$link = HTTP_SERVER . DIR_WS_ADMIN;
	}
} else {
	die('</td></tr></table></td></tr></table>

<font color="#ff0000"><b>Error!</b></font>

<b>Unable to determine connection method on a link!

Known methods: NONSSL SSL

Function used:

tep_href_link(\'' . $page . '\', \'' . $parameters . '\', \'' . $connection . '\')</b>');
}
if ($parameters == '') {
	$link = $link . $page . '?' . SID;
} else {
	$link = $link . $page . '?' . $parameters . '&' . SID;
}

while ( (substr($link, -1) == '&') || (substr($link, -1) == '?') ) $link = substr($link, 0, -1);

return $link;
}

 

Nic

 

 

Hi Yeah As you can see below all seem fine......Any help would be GREAT

 

html_output.php 
PHP script text 
--------------------------------------------------------------------------------

<?php
/*
 $Id: html_output.php,v 1.29 2003/06/25 20:32:44 hpdl Exp $

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

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

////
// The HTML href link wrapper function
 function tep_href_link($page = '', $parameters = '', $connection = 'NONSSL') {
   if ($page == '') {
     die('</td></tr></table></td></tr></table><br><br><font color="#ff0000"><b>Error!</b></font><br><br><b>Unable to determine the page link!<br><br>Function used:<br><br>tep_href_link(\'' . $page . '\', \'' . $parameters . '\', \'' . $connection . '\')</b>');
   }
   if ($connection == 'NONSSL') {
     $link = HTTP_SERVER . DIR_WS_ADMIN;
   } elseif ($connection == 'SSL') {
     if (ENABLE_SSL == 'true') {
       $link = HTTPS_SERVER . DIR_WS_ADMIN;
     } else {
       $link = HTTP_SERVER . DIR_WS_ADMIN;
     }
   } else {
     die('</td></tr></table></td></tr></table><br><br><font color="#ff0000"><b>Error!</b></font><br><br><b>Unable to determine connection method on a link!<br><br>Known methods: NONSSL SSL<br><br>Function used:<br><br>tep_href_link(\'' . $page . '\', \'' . $parameters . '\', \'' . $connection . '\')</b>');
   }
   if ($parameters == '') {
     $link = $link . $page . '?' . SID;
   } else {
     $link = $link . $page . '?' . $parameters . '&' . SID;
   }

   while ( (substr($link, -1) == '&') || (substr($link, -1) == '?') ) $link = substr($link, 0, -1);

   return $link;
 }

 function tep_catalog_href_link($page = '', $parameters = '', $connection = 'NONSSL') {
   if ($connection == 'NONSSL') {
     $link = HTTP_CATALOG_SERVER . DIR_WS_CATALOG;
   } elseif ($connection == 'SSL') {
     if (ENABLE_SSL_CATALOG == 'true') {
       $link = HTTPS_CATALOG_SERVER . DIR_WS_CATALOG;
     } else {
       $link = HTTP_CATALOG_SERVER . DIR_WS_CATALOG;
     }
   } else {
     die('</td></tr></table></td></tr></table><br><br><font color="#ff0000"><b>Error!</b></font><br><br><b>Unable to determine connection method on a link!<br><br>Known methods: NONSSL SSL<br><br>Function used:<br><br>tep_href_link(\'' . $page . '\', \'' . $parameters . '\', \'' . $connection . '\')</b>');
   }
   if ($parameters == '') {
     $link .= $page;
   } else {
     $link .= $page . '?' . $parameters;
   }

   while ( (substr($link, -1) == '&') || (substr($link, -1) == '?') ) $link = substr($link, 0, -1);

   return $link;
 }

////
// The HTML image wrapper function
 function tep_image($src, $alt = '', $width = '', $height = '', $params = '') {
   $image = '<img src="' . $src . '" border="0" alt="' . $alt . '"';
   if ($alt) {
     $image .= ' title=" ' . $alt . ' "';
   }
   if ($width) {
     $image .= ' width="' . $width . '"';
   }
   if ($height) {
     $image .= ' height="' . $height . '"';
   }
   if ($params) {
     $image .= ' ' . $params;
   }
   $image .= '>';

   return $image;
 }

////
// The HTML form submit button wrapper function
// Outputs a button in the selected language
 function tep_image_submit($image, $alt = '', $parameters = '') {
   global $language;

   $image_submit = '<input type="image" src="' . tep_output_string(DIR_WS_LANGUAGES . $language . '/images/buttons/' . $image) . '" border="0" alt="' . tep_output_string($alt) . '"';

   if (tep_not_null($alt)) $image_submit .= ' title=" ' . tep_output_string($alt) . ' "';

   if (tep_not_null($parameters)) $image_submit .= ' ' . $parameters;

   $image_submit .= '>';

   return $image_submit;
 }

////
// Draw a 1 pixel black line
 function tep_black_line() {
   return tep_image(DIR_WS_IMAGES . 'pixel_black.gif', '', '100%', '1');
 }

////
// Output a separator either through whitespace, or with an image
 function tep_draw_separator($image = 'pixel_black.gif', $width = '100%', $height = '1') {
   return tep_image(DIR_WS_IMAGES . $image, '', $width, $height);
 }

////
// Output a function button in the selected language
 function tep_image_button($image, $alt = '', $params = '') {
   global $language;

   return tep_image(DIR_WS_LANGUAGES . $language . '/images/buttons/' . $image, $alt, '', '', $params);
 }

////
// javascript to dynamically update the states/provinces list when the country is changed
// TABLES: zones
 function tep_js_zone_list($country, $form, $field) {
   $countries_query = tep_db_query("select distinct zone_country_id from " . TABLE_ZONES . " order by zone_country_id");
   $num_country = 1;
   $output_string = '';
   while ($countries = tep_db_fetch_array($countries_query)) {
     if ($num_country == 1) {
       $output_string .= '  if (' . $country . ' == "' . $countries['zone_country_id'] . '") {' . "\n";
     } else {
       $output_string .= '  } else if (' . $country . ' == "' . $countries['zone_country_id'] . '") {' . "\n";
     }

     $states_query = tep_db_query("select zone_name, zone_id from " . TABLE_ZONES . " where zone_country_id = '" . $countries['zone_country_id'] . "' order by zone_name");

     $num_state = 1;
     while ($states = tep_db_fetch_array($states_query)) {
       if ($num_state == '1') $output_string .= '    ' . $form . '.' . $field . '.options[0] = new Option("' . PLEASE_SELECT . '", "");' . "\n";
       $output_string .= '    ' . $form . '.' . $field . '.options[' . $num_state . '] = new Option("' . $states['zone_name'] . '", "' . $states['zone_id'] . '");' . "\n";
       $num_state++;
     }
     $num_country++;
   }
   $output_string .= '  } else {' . "\n" .
                     '    ' . $form . '.' . $field . '.options[0] = new Option("' . TYPE_BELOW . '", "");' . "\n" .
                     '  }' . "\n";

   return $output_string;
 }

////
// Output a form
 function tep_draw_form($name, $action, $parameters = '', $method = 'post', $params = '') {
   $form = '<form name="' . tep_output_string($name) . '" action="';
   if (tep_not_null($parameters)) {
     $form .= tep_href_link($action, $parameters);
   } else {
     $form .= tep_href_link($action);
   }
   $form .= '" method="' . tep_output_string($method) . '"';
   if (tep_not_null($params)) {
     $form .= ' ' . $params;
   }
   $form .= '>';

   return $form;
 }

////
// Output a form input field
 function tep_draw_input_field($name, $value = '', $parameters = '', $required = false, $type = 'text', $reinsert_value = true) {
   $field = '<input type="' . tep_output_string($type) . '" name="' . tep_output_string($name) . '"';

   if (isset($GLOBALS[$name]) && ($reinsert_value == true) && is_string($GLOBALS[$name])) {
     $field .= ' value="' . tep_output_string(stripslashes($GLOBALS[$name])) . '"';
   } elseif (tep_not_null($value)) {
     $field .= ' value="' . tep_output_string($value) . '"';
   }

   if (tep_not_null($parameters)) $field .= ' ' . $parameters;

   $field .= '>';

   if ($required == true) $field .= TEXT_FIELD_REQUIRED;

   return $field;
 }

////
// Output a form password field
 function tep_draw_password_field($name, $value = '', $required = false) {
   $field = tep_draw_input_field($name, $value, 'maxlength="40"', $required, 'password', false);

   return $field;
 }

////
// Output a form filefield
 function tep_draw_file_field($name, $required = false) {
   $field = tep_draw_input_field($name, '', '', $required, 'file');

   return $field;
 }

////
// Output a selection field - alias function for tep_draw_checkbox_field() and tep_draw_radio_field()
 function tep_draw_selection_field($name, $type, $value = '', $checked = false, $compare = '') {
   $selection = '<input type="' . tep_output_string($type) . '" name="' . tep_output_string($name) . '"';

   if (tep_not_null($value)) $selection .= ' value="' . tep_output_string($value) . '"';

   if ( ($checked == true) || (isset($GLOBALS[$name]) && is_string($GLOBALS[$name]) && ($GLOBALS[$name] == 'on')) || (isset($value) && isset($GLOBALS[$name]) && (stripslashes($GLOBALS[$name]) == $value)) || (tep_not_null($value) && tep_not_null($compare) && ($value == $compare)) ) {
     $selection .= ' CHECKED';
   }

   $selection .= '>';

   return $selection;
 }

////
// Output a form checkbox field
 function tep_draw_checkbox_field($name, $value = '', $checked = false, $compare = '') {
   return tep_draw_selection_field($name, 'checkbox', $value, $checked, $compare);
 }

////
// Output a form radio field
 function tep_draw_radio_field($name, $value = '', $checked = false, $compare = '') {
   return tep_draw_selection_field($name, 'radio', $value, $checked, $compare);
 }

////
// Output a form textarea field
 function tep_draw_textarea_field($name, $wrap, $width, $height, $text = '', $parameters = '', $reinsert_value = true) {
   $field = '<textarea name="' . tep_output_string($name) . '" wrap="' . tep_output_string($wrap) . '" cols="' . tep_output_string($width) . '" rows="' . tep_output_string($height) . '"';

   if (tep_not_null($parameters)) $field .= ' ' . $parameters;

   $field .= '>';

   if ( (isset($GLOBALS[$name])) && ($reinsert_value == true) ) {
     $field .= stripslashes($GLOBALS[$name]);
   } elseif (tep_not_null($text)) {
     $field .= $text;
   }

   $field .= '</textarea>';

   return $field;
 }

////
// Output a form hidden field
 function tep_draw_hidden_field($name, $value = '', $parameters = '') {
   $field = '<input type="hidden" name="' . tep_output_string($name) . '"';

   if (tep_not_null($value)) {
     $field .= ' value="' . tep_output_string($value) . '"';
   } elseif (isset($GLOBALS[$name]) && is_string($GLOBALS[$name])) {
     $field .= ' value="' . tep_output_string(stripslashes($GLOBALS[$name])) . '"';
   }

   if (tep_not_null($parameters)) $field .= ' ' . $parameters;

   $field .= '>';

   return $field;
 }

////
// Output a form pull down menu
 function tep_draw_pull_down_menu($name, $values, $default = '', $parameters = '', $required = false) {
   $field = '<select name="' . tep_output_string($name) . '"';

   if (tep_not_null($parameters)) $field .= ' ' . $parameters;

   $field .= '>';

   if (empty($default) && isset($GLOBALS[$name])) $default = stripslashes($GLOBALS[$name]);

   for ($i=0, $n=sizeof($values); $i<$n; $i++) {
     $field .= '<option value="' . tep_output_string($values[$i]['id']) . '"';
     if ($default == $values[$i]['id']) {
       $field .= ' SELECTED';
     }

     $field .= '>' . tep_output_string($values[$i]['text'], array('"' => '"', '\'' => ''', '<' => '<', '>' => '>')) . '</option>';
   }
   $field .= '</select>';

   if ($required == true) $field .= TEXT_FIELD_REQUIRED;

   return $field;
 }
?>

Complete Newbie On The Learn - Not A Programmer

But Learning As I Go

Posted

Post the first 25 to 30 lines of code from /admin/index.php

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 >

Posted

Here you go

 


<?php
/*
 $Id: index.php,v 1.19 2003/06/27 09:38:31 dgw_ Exp $

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

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 require('includes/application_top.php');

 $cat = array(array('title' => BOX_HEADING_CONFIGURATION,
                    'image' => 'configuration.gif',
                    'href' => tep_href_link(FILENAME_CONFIGURATION, 'selected_box=configuration&gID=1'),
                    'children' => array(array('title' => BOX_CONFIGURATION_MYSTORE, 'link' => tep_href_link(FILENAME_CONFIGURATION, 'selected_box=configuration&gID=1')),
                                        array('title' => BOX_CONFIGURATION_LOGGING, 'link' => tep_href_link(FILENAME_CONFIGURATION, 'selected_box=configuration&gID=10')),
                                        array('title' => BOX_CONFIGURATION_CACHE, 'link' => tep_href_link(FILENAME_CONFIGURATION, 'selected_box=configuration&gID=11')))),
              array('title' => BOX_HEADING_MODULES,
                    'image' => 'modules.gif',
                    'href' => tep_href_link(FILENAME_MODULES, 'selected_box=modules&set=payment'),
                    'children' => array(array('title' => BOX_MODULES_PAYMENT, 'link' => tep_href_link(FILENAME_MODULES, 'selected_box=modules&set=payment')),
                                        array('title' => BOX_MODULES_SHIPPING, 'link' => tep_href_link(FILENAME_MODULES, 'selected_box=modules&set=shipping')))),
              array('title' => BOX_HEADING_CATALOG,
                    'image' => 'catalog.gif',
                    'href' => tep_href_link(FILENAME_CATEGORIES, 'selected_box=catalog'),
                    'children' => array(array('title' => CATALOG_CONTENTS, 'link' => tep_href_link(FILENAME_CATEGORIES, 'selected_box=catalog')),
                                        array('title' => BOX_CATALOG_MANUFACTURERS, 'link' => tep_href_link(FILENAME_MANUFACTURERS, 'selected_box=catalog')))),
              array('title' => BOX_HEADING_LOCATION_AND_TAXES,
                    'image' => 'location.gif',
                    'href' => tep_href_link(FILENAME_COUNTRIES, 'selected_box=taxes'),
                    'children' => array(array('title' => BOX_TAXES_COUNTRIES, 'link' => tep_href_link(FILENAME_COUNTRIES, 'selected_box=taxes')),
                                        array('title' => BOX_TAXES_GEO_ZONES, 'link' => tep_href_link(FILENAME_GEO_ZONES, 'selected_box=taxes')))),
              array('title' => BOX_HEADING_CUSTOMERS,
                    'image' => 'customers.gif',
                    'href' => tep_href_link(FILENAME_CUSTOMERS, 'selected_box=customers'),
                    'children' => array(array('title' => BOX_CUSTOMERS_CUSTOMERS, 'link' => tep_href_link(FILENAME_CUSTOMERS, 'selected_box=customers')),
                                        array('title' => BOX_CUSTOMERS_ORDERS, 'link' => tep_href_link(FILENAME_ORDERS, 'selected_box=customers')))),
              array('title' => BOX_HEADING_LOCALIZATION,
                    'image' => 'localization.gif',
                    'href' => tep_href_link(FILENAME_CURRENCIES, 'selected_box=localization'),
                    'children' => array(array('title' => BOX_LOCALIZATION_CURRENCIES, 'link' => tep_href_link(FILENAME_CURRENCIES, 'selected_box=localization')),
                                        array('title' => BOX_LOCALIZATION_LANGUAGES, 'link' => tep_href_link(FILENAME_LANGUAGES, 'selected_box=localization')))),
              array('title' => BOX_HEADING_REPORTS,


Complete Newbie On The Learn - Not A Programmer

But Learning As I Go

Posted

// define our general functions used application-wide
 require(DIR_WS_FUNCTIONS . 'general.php');
 require(DIR_WS_FUNCTIONS . 'html_output.php');

Look in /admin/includes/application_top.php for the above posted code.

 

Especially the last line.

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 >

Posted

OK who wants to laugh first?

 

Just happened to look at the files thru cpanal X rather than FTP (dont use cPanel for uploading as too slow).....

 

It looks like the last backup I did of the files failed, and just created the skeleton map, a lot of the files in ADMIN/INCLUDES were 0bytes....

 

Uploaded the files from the previous backup and now all working......

 

GO ON LAUGH I DESERVE THAT ONE....LOL

Complete Newbie On The Learn - Not A Programmer

But Learning As I Go

Posted

Just glad you figured it out.

:)

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 >

Archived

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

×
×
  • Create New...