virtualadz Posted May 23, 2006 Share Posted May 23, 2006 hi, everyone: i am using: phpi need: sub-files under sub-folders, but couln't make it a little more than errorsjust like w3schools.com http://www.w3schools.com/html/html_formatting.aspleave the asp as i need phpi tried making files in sub-folders but failed. have anyone any idea how do i do that as i also have to link others from where it's content would come examplesuppose this is my root fodlerpublic_htmli have a sub-folder in public_htmlcolorsthe file inside colors is another.phpit's content would come fromsupposepublic_html/folderpublic_html/folder/folder/file.phpand more like them,giving ../ before the files will be stupid.the links are as DIR_WS_FOLDERand as suchso has anyone any idea or would like some details , anything possible please replythnks Link to comment Share on other sites More sharing options...
justsomeguy Posted May 23, 2006 Share Posted May 23, 2006 I have absolutely no idea what you're asking. i tried making files in sub-folders but failed.What do you mean you failed? You can't create a new file? Is it a permission issue? Are you trying to FTP something to a server, or use a command line to create a new file?So you have a file called public_html/colors/another.php, and you want to reference public_html/folder/folder/file.php? From inside another.php, there are two ways to do it:../folder/folder/file.php (relative path, but apparently you think this is "stupid")/public_html/folder/folder/file.php (absolute path) Link to comment Share on other sites More sharing options...
virtualadz Posted May 23, 2006 Author Share Posted May 23, 2006 (edited) ok ok, just look at a sample file under public_html/file starts here [color="blue"]<?php/* $Id: shipping.php,v 1.22 2003/06/05 23:26:23 hpdl Exp $*/ require('includes/application_top.php'); require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_SHIPPING); $breadcrumb->add(NAVBAR_TITLE, tep_href_link(FILENAME_SHIPPING));?><!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"><html <?php echo HTML_PARAMS; ?>><head><?php// BOF: Header Tag Controller v2.5.7if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) { require(DIR_WS_INCLUDES . 'header_tags.php');} else {?> <title><?php echo TITLE; ?></title><?php}// EOF: Header Tag Controller v2.5.7?><base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>"><link rel="stylesheet" type="text/css" href="stylesheet.css"><link rel="stylesheet" media="all" type="text/css" href="basic_dd.css" /><!--[if lte IE 6]><link rel="stylesheet" media="all" type="text/css" href="basic_dd_ie.css" /><![endif]--></head><body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0"><!-- header //--><?php require(DIR_WS_INCLUDES . 'header.php'); ?><!-- header_eof //--><!-- body //--><table border="0" width="100%" cellspacing="3" cellpadding="3"> <tr> <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2"><!-- left_navigation //--><?php require(DIR_WS_INCLUDES . 'column_left.php'); ?><!-- left_navigation_eof //--> </table></td><!-- body_text //--> <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td class="pageHeading"><?php echo HEADING_TITLE; ?></td> <td class="pageHeading" align="right"><?php echo tep_image(DIR_WS_IMAGES . 'table_background_delivery.gif', HEADING_TITLE, HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td> </tr> </table></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td><table border="0" width="100%" cellspacing="0" cellpadding="2"> <tr> <td class="main"><?php echo TEXT_INFORMATION; ?></td> </tr> </table></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox"> <tr class="infoBoxContents"> <td><table border="0" width="100%" cellspacing="0" cellpadding="2"> <tr> <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td> <td align="right"><?php echo '<a href="' . tep_href_link(FILENAME_DEFAULT) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?></td> <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td> </tr> </table></td> </tr> </table></td> </tr> </table></td><!-- body_text_eof //--> </tr></table><!-- body_eof //--><!-- footer //--><?php require(DIR_WS_INCLUDES . 'footer.php'); ?><!-- footer_eof //--><br></body></html><?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>[/color] Edited May 23, 2006 by Jonas Link to comment Share on other sites More sharing options...
virtualadz Posted May 23, 2006 Author Share Posted May 23, 2006 now whatever you saw above was in public_html/ ok, now the sub-folder: colorsand the file under it: another.phpwhat i did was added ../ in front of all those DIR_WS_FOLDERNAME refrences coming in the above post #3. but it showed errors, i might have done something wrong, but couldn't catch it, or may be i was not doing it wrong, but there was a different way other than what i was using , i dont know if it's going to create errors that's why a little cautious, as my site uses session ids and variables Link to comment Share on other sites More sharing options...
justsomeguy Posted May 23, 2006 Share Posted May 23, 2006 I'm still not clear what you are trying to do and what the problem is. I guarantee that if you try changing things around and seeing how it works, you're not going to break anything. Look at the errors that happen, look at the lines the errors happen on, and figure out why. You can always change it back. Just try different things. Use php.net for reference. Link to comment Share on other sites More sharing options...
boen_robot Posted May 23, 2006 Share Posted May 23, 2006 I told you earlier in a topic you made that this can only be done by a server configuration. THAT's the thing that manipulate what different URIs mean. You'll have to explicitly set that files with no extension are HTML files so it can show them in the browser and/or set the index file name to the name mathing your file in that folder. It doesn't matter if you use PHP or ASP. Link to comment Share on other sites More sharing options...
pulpfiction Posted May 23, 2006 Share Posted May 23, 2006 First of all by DIR_WS_FOLDERNAME do u mean DIR_WS_INCLUDES.assuming so, check what [path] is stored in the DIR_WS_INCLUDES. there is a chance that you cannot access that folder above the folder of the path stored in DIR_WS_INCLUDE Link to comment Share on other sites More sharing options...
virtualadz Posted May 23, 2006 Author Share Posted May 23, 2006 ok, i just copied the file i supplied earlier in post #3, under public_html in a new folderpublic_html/where_to_buy/locate_a_store.phpvisit:http://www.bhuratea.com/where_to_buy/locate_a_store.phpand find the errorsabout what boen_robot said sorry but i didn't understand that Link to comment Share on other sites More sharing options...
virtualadz Posted May 23, 2006 Author Share Posted May 23, 2006 please note i didn't make any chnages to it asadding ../as i dont think they will do the trick, what is your opinion Link to comment Share on other sites More sharing options...
virtualadz Posted May 23, 2006 Author Share Posted May 23, 2006 ok now i added ../ in front of includes/application_top.php , what changes is the errors. nothing else Link to comment Share on other sites More sharing options...
boen_robot Posted May 23, 2006 Share Posted May 23, 2006 and find the errorsabout what boen_robot said sorry but i didn't understand that I was talking about this:http://w3schools.invisionzone.com/index.php?showtopic=4216but perhaps I didn't understood you correctly. Link to comment Share on other sites More sharing options...
pulpfiction Posted May 23, 2006 Share Posted May 23, 2006 locate_a_store.php is in the folder: where_to_buy, you have to include application_top.php, which is in the folder: includesadd this '../includes/application_top.php' in this statementrequire('includes/application_top.php');one more clarification is the includes and where_to_buy folders are in the same folder, then the above thing will work. The error you are getting is that it is not able to open the "application_top.php" Link to comment Share on other sites More sharing options...
virtualadz Posted May 23, 2006 Author Share Posted May 23, 2006 ok ok ok, now i was able to add ../ in front of includes/application_top.phpbut how do i add ../ in front of these// BOF: Header Tag Controller v2.5.7if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) { require(DIR_WS_INCLUDES . 'header_tags.php');note: any references to codes i am making check from in post #3 Link to comment Share on other sites More sharing options...
pulpfiction Posted May 23, 2006 Share Posted May 23, 2006 check where the "includes" folder is? and for number of steps up is this "includes" folder from the current "where_to_buy" folder is... Link to comment Share on other sites More sharing options...
pulpfiction Posted May 23, 2006 Share Posted May 23, 2006 for this "DIR_WS_INCLUDES" you have to know what path is stored in this variable and mostly it will be the base path. to go 1 folder up use ../ and to goto subfolder from the path you have to use the folder name.say, DIR_WS_INCLUDES="C:\Inetpub\wwwroot" to goto C:\Inetpubwrite ../DIR_WS_INCLUDES.if you have to goto a folder inside wwwroot [eg: foldername: test] then it would be$language='test'require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_SHIPPING);// FILENAME_SHIPPING will be name of the file. Link to comment Share on other sites More sharing options...
justsomeguy Posted May 23, 2006 Share Posted May 23, 2006 If DIR_WS_INCLUDES is an absolute path, then you don't need to indicate a parent directory at all. In your example if DIR_WS_INCLUDES="C:\Inetpub\wwwroot", then saying ../DIR_WS_INCLUDES is saying ../C:\Inetpub\wwwroot. That doesn't make sense, if DIR_WS_INCLUDES is an absolute path, then you don't need a parent directory qualifier. Warning: main(includes/configure.php): failed to open stream: No such file or directory in /home/bhura4/public_html/includes/application_top.php on line 29Warning: main(includes/configure.php): failed to open stream: No such file or directory in /home/bhura4/public_html/includes/application_top.php on line 29Fatal error: main(): Failed opening required 'includes/configure.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/bhura4/public_html/includes/application_top.php on line 29 Hey virtualadz, you think maybe you want to check on line 29 of that file? That would probably be a good place to start. Look at what is happening on that line, obviously it can't find a file it's looking for. If you don't know why it can't find it, then print out the filename it is looking for and see if you have the right path. This is pretty basic debugging. Link to comment Share on other sites More sharing options...
virtualadz Posted May 24, 2006 Author Share Posted May 24, 2006 hey virtualadz, you think maybe you want to check on line 29 of that file? That would probably be a good place to start. Look at what is happening on that line, obviously it can't find a file it's looking for. If you don't know why it can't find it, then print out the filename it is looking for and see if you have the right path. This is pretty basic debugging. well, i dont think looking there would be of any help, as there aren't any errors related to it, if there were any than other files in my root folder won't have worked, there's probably a need to make changes to the file (post #3) in the sub-folder.for this "DIR_WS_INCLUDES" you have to know what path is stored in this variable and mostly it will be the base path. to go 1 folder up use ../ and to goto subfolder from the path you have to use the folder name.say, DIR_WS_INCLUDES="C:\Inetpub\wwwroot" to goto C:\Inetpubwrite ../DIR_WS_INCLUDES.if you have to goto a folder inside wwwroot [eg: foldername: test] then it would be$language='test'require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_SHIPPING);// FILENAME_SHIPPING will be name of the file. i had tried adding ../ before but was of no help earlier. Link to comment Share on other sites More sharing options...
pulpfiction Posted May 24, 2006 Share Posted May 24, 2006 When I told you to add ../ before DIR_WS_INCLUDES, i was wrong. DIR_WS_INCLUDES is the base URL or Path. you cannot go step behind by using ../ By base url i mean starting path to your project and you dont have to look for a folder above that.I guess DIR_WS_INCLUDES is the path to the includes folder, somthing like "C:\Inetpub\wwwroot\projectname\includes\" and your configure.php will be in that folder. Link to comment Share on other sites More sharing options...
virtualadz Posted May 24, 2006 Author Share Posted May 24, 2006 yes you guessed right this timepublic_html (root folder)public_html/includes confirgure.phpall refrecnces are coming from includes and it's sub- -sub- - folders.so do you know of a way i can acheive it Link to comment Share on other sites More sharing options...
pulpfiction Posted May 24, 2006 Share Posted May 24, 2006 to include configure.php,require(DIR_WS_INCLUDES . 'configure.php'); where DIR_WS_INCLUDES = /home/bhura4/public_html/includes/this should work Link to comment Share on other sites More sharing options...
virtualadz Posted May 24, 2006 Author Share Posted May 24, 2006 but then if you take a closer look at the shipping.php file i had supplied in post#3 you will not find any configure.php, all other pages also dont have any configure defined, so what should i do now Link to comment Share on other sites More sharing options...
virtualadz Posted May 24, 2006 Author Share Posted May 24, 2006 i think it is not possible. in my configure and application_top files the whole drama exists, in those two files there's everything defined, to look for which file where under which folder and so on. the application_top is 514 lines, thinking of which i now i will have to make every page under the root folder, which i know is going to be the cause for confusion, but i am left with no other option it seems. thanks for your help though Link to comment Share on other sites More sharing options...
justsomeguy Posted May 24, 2006 Share Posted May 24, 2006 Man, you are impossible to help. Rule #1 of debugging: if there are error messages, see what they say, and respond to themYour errors say application_top.php on line 29 is producing errors, but you don't want to look there to find out what is causing the error? How can you create a solution if you don't even know what the problem is in the first place?Good luck, I hope you solve your problem. I suggest you take a look at the lines causing the error, figure out why they are causing the error, and figure out what you need to do to fix it. That would be debugging. Link to comment Share on other sites More sharing options...
virtualadz Posted May 24, 2006 Author Share Posted May 24, 2006 well, you are impossible to understand anything.saying so i mean , i have searched the application_top.php and have found something useful in regard with the errors, there are lines in it which are define the path of the files and folders. i though it would be pretty easy, but then looking at i needed to add so many changes to it, bcoz to make it able to look for contents in the sub-folders referring areas.well i think i must post a copy of the application_top.php Link to comment Share on other sites More sharing options...
virtualadz Posted May 24, 2006 Author Share Posted May 24, 2006 (edited) my complete application_top.php file, hope this makes you understand something: <?php/* $Id: application_top.php,v 1.280 2003/07/12 09:38:07 hpdl Exp $*/// start the timer for the page parse time log define('PAGE_PARSE_START_TIME', microtime());// set the level of error reporting error_reporting(E_ALL & ~E_NOTICE);// check if register_globals is enabled.// since this is a temporary measure this message is hardcoded. The requirement will be removed before 2.2 is finalized. if (function_exists('ini_get')) { ini_get('register_globals') or exit('Server Requirement Error: register_globals is disabled in your PHP configuration. This can be enabled in your php.ini configuration file or in the .htaccess file in your catalog directory.'); }// Set the local configuration parameters - mainly for developers if (file_exists('includes/local/configure.php')) include('includes/local/configure.php');// include server parameters require('includes/configure.php'); if (strlen(DB_SERVER) < 1) { if (is_dir('install')) { header('Location: install/index.php'); } }// set the type of request (secure or not) $request_type = (getenv('HTTPS') == 'on') ? 'SSL' : 'NONSSL';// set php_self in the local scope if (!isset($PHP_SELF)) $PHP_SELF = $HTTP_SERVER_VARS['PHP_SELF']; if ($request_type == 'NONSSL') { define('DIR_WS_CATALOG', DIR_WS_HTTP_CATALOG); } else { define('DIR_WS_CATALOG', DIR_WS_HTTPS_CATALOG); }// include the list of project filenames require(DIR_WS_INCLUDES . 'filenames.php');// include the list of project database tables require(DIR_WS_INCLUDES . 'database_tables.php');// customization for the design layout define('BOX_WIDTH', 125); // how wide the boxes should be in pixels (default: 125)// include the database functions require(DIR_WS_FUNCTIONS . 'database.php');// make a connection to the database... now tep_db_connect() or die('Unable to connect to database server!');// set the application parameters $configuration_query = tep_db_query('select configuration_key as cfgKey, configuration_value as cfgValue from ' . TABLE_CONFIGURATION); while ($configuration = tep_db_fetch_array($configuration_query)) { define($configuration['cfgKey'], $configuration['cfgValue']); }// if gzip_compression is enabled, start to buffer the output if ( (GZIP_COMPRESSION == 'true') && ($ext_zlib_loaded = extension_loaded('zlib')) && (PHP_VERSION >= '4') ) { if (($ini_zlib_output_compression = (int)ini_get('zlib.output_compression')) < 1) { if (PHP_VERSION >= '4.0.4') { ob_start('ob_gzhandler'); } else { include(DIR_WS_FUNCTIONS . 'gzip_compression.php'); ob_start(); ob_implicit_flush(); } } else { ini_set('zlib.output_compression_level', GZIP_LEVEL); } }// set the HTTP GET parameters manually if search_engine_friendly_urls is enabled if (SEARCH_ENGINE_FRIENDLY_URLS == 'true') { if (strlen(getenv('PATH_INFO')) > 1) { $GET_array = array(); $PHP_SELF = str_replace(getenv('PATH_INFO'), '', $PHP_SELF); $vars = explode('/', substr(getenv('PATH_INFO'), 1)); for ($i=0, $n=sizeof($vars); $i<$n; $i++) { if (strpos($vars[$i], '[]')) { $GET_array[substr($vars[$i], 0, -2)][] = $vars[$i+1]; } else { $HTTP_GET_VARS[$vars[$i]] = $vars[$i+1]; } $i++; } if (sizeof($GET_array) > 0) { while (list($key, $value) = each($GET_array)) { $HTTP_GET_VARS[$key] = $value; } } } }// define general functions used application-wide require(DIR_WS_FUNCTIONS . 'general.php'); require(DIR_WS_FUNCTIONS . 'html_output.php');// set the cookie domain $cookie_domain = (($request_type == 'NONSSL') ? HTTP_COOKIE_DOMAIN : HTTPS_COOKIE_DOMAIN); $cookie_path = (($request_type == 'NONSSL') ? HTTP_COOKIE_PATH : HTTPS_COOKIE_PATH);// include cache functions if enabled if (USE_CACHE == 'true') include(DIR_WS_FUNCTIONS . 'cache.php');// include shopping cart class require(DIR_WS_CLASSES . 'shopping_cart.php');// include navigation history class require(DIR_WS_CLASSES . 'navigation_history.php');// some code to solve compatibility issues require(DIR_WS_FUNCTIONS . 'compatibility.php');// check if sessions are supported, otherwise use the php3 compatible session class if (!function_exists('session_start')) { define('PHP_SESSION_NAME', 'osCsid'); define('PHP_SESSION_PATH', $cookie_path); define('PHP_SESSION_DOMAIN', $cookie_domain); define('PHP_SESSION_SAVE_PATH', SESSION_WRITE_DIRECTORY); include(DIR_WS_CLASSES . 'sessions.php'); }// define how the session functions will be used require(DIR_WS_FUNCTIONS . 'sessions.php');// set the session name and save path tep_session_name('osCsid'); tep_session_save_path(SESSION_WRITE_DIRECTORY);// set the session cookie parameters if (function_exists('session_set_cookie_params')) { session_set_cookie_params(0, $cookie_path, $cookie_domain); } elseif (function_exists('ini_set')) { ini_set('session.cookie_lifetime', '0'); ini_set('session.cookie_path', $cookie_path); ini_set('session.cookie_domain', $cookie_domain); }// set the session ID if it exists if (isset($HTTP_POST_VARS[tep_session_name()])) { tep_session_id($HTTP_POST_VARS[tep_session_name()]); } elseif ( ($request_type == 'SSL') && isset($HTTP_GET_VARS[tep_session_name()]) ) { tep_session_id($HTTP_GET_VARS[tep_session_name()]); }// start the session $session_started = false; if (SESSION_FORCE_COOKIE_USE == 'True') { tep_setcookie('cookie_test', 'please_accept_for_session', time()+60*60*24*30, $cookie_path, $cookie_domain); if (isset($HTTP_COOKIE_VARS['cookie_test'])) { tep_session_start(); $session_started = true; } } elseif (SESSION_BLOCK_SPIDERS == 'True') { $user_agent = strtolower(getenv('HTTP_USER_AGENT')); $spider_flag = false; if (tep_not_null($user_agent)) { $spiders = file(DIR_WS_INCLUDES . 'spiders.txt'); for ($i=0, $n=sizeof($spiders); $i<$n; $i++) { if (tep_not_null($spiders[$i])) { if (is_integer(strpos($user_agent, trim($spiders[$i])))) { $spider_flag = true; break; } } } } if ($spider_flag == false) { tep_session_start(); $session_started = true; } } else { tep_session_start(); $session_started = true; }// set SID once, even if empty $SID = (defined('SID') ? SID : '');// verify the ssl_session_id if the feature is enabled if ( ($request_type == 'SSL') && (SESSION_CHECK_SSL_SESSION_ID == 'True') && (ENABLE_SSL == true) && ($session_started == true) ) { $ssl_session_id = getenv('SSL_SESSION_ID'); if (!tep_session_is_registered('SSL_SESSION_ID')) { $SESSION_SSL_ID = $ssl_session_id; tep_session_register('SESSION_SSL_ID'); } if ($SESSION_SSL_ID != $ssl_session_id) { tep_session_destroy(); tep_redirect(tep_href_link(FILENAME_SSL_CHECK)); } }// verify the browser user agent if the feature is enabled if (SESSION_CHECK_USER_AGENT == 'True') { $http_user_agent = getenv('HTTP_USER_AGENT'); if (!tep_session_is_registered('SESSION_USER_AGENT')) { $SESSION_USER_AGENT = $http_user_agent; tep_session_register('SESSION_USER_AGENT'); } if ($SESSION_USER_AGENT != $http_user_agent) { tep_session_destroy(); tep_redirect(tep_href_link(FILENAME_LOGIN)); } }// verify the IP address if the feature is enabled if (SESSION_CHECK_IP_ADDRESS == 'True') { $ip_address = tep_get_ip_address(); if (!tep_session_is_registered('SESSION_IP_ADDRESS')) { $SESSION_IP_ADDRESS = $ip_address; tep_session_register('SESSION_IP_ADDRESS'); } if ($SESSION_IP_ADDRESS != $ip_address) { tep_session_destroy(); tep_redirect(tep_href_link(FILENAME_LOGIN)); } }// create the shopping cart & fix the cart if necesary if (tep_session_is_registered('cart') && is_object($cart)) { if (PHP_VERSION < 4) { $broken_cart = $cart; $cart = new shoppingCart; $cart->unserialize($broken_cart); } } else { tep_session_register('cart'); $cart = new shoppingCart; }// include currencies class and create an instance require(DIR_WS_CLASSES . 'currencies.php'); $currencies = new currencies();// include the mail classes require(DIR_WS_CLASSES . 'mime.php'); require(DIR_WS_CLASSES . 'email.php');// set the language if (!tep_session_is_registered('language') || isset($HTTP_GET_VARS['language'])) { if (!tep_session_is_registered('language')) { tep_session_register('language'); tep_session_register('languages_id'); } include(DIR_WS_CLASSES . 'language.php'); $lng = new language(); if (isset($HTTP_GET_VARS['language']) && tep_not_null($HTTP_GET_VARS['language'])) { $lng->set_language($HTTP_GET_VARS['language']); } else { $lng->get_browser_language(); } $language = $lng->language['directory']; $languages_id = $lng->language['id']; }// include the language translations require(DIR_WS_LANGUAGES . $language . '.php');// currency if (!tep_session_is_registered('currency') || isset($HTTP_GET_VARS['currency']) || ( (USE_DEFAULT_LANGUAGE_CURRENCY == 'true') && (LANGUAGE_CURRENCY != $currency) ) ) { if (!tep_session_is_registered('currency')) tep_session_register('currency'); if (isset($HTTP_GET_VARS['currency'])) { if (!$currency = tep_currency_exists($HTTP_GET_VARS['currency'])) $currency = (USE_DEFAULT_LANGUAGE_CURRENCY == 'true') ? LANGUAGE_CURRENCY : DEFAULT_CURRENCY; } else { $currency = (USE_DEFAULT_LANGUAGE_CURRENCY == 'true') ? LANGUAGE_CURRENCY : DEFAULT_CURRENCY; } }// navigation history if (tep_session_is_registered('navigation')) { if (PHP_VERSION < 4) { $broken_navigation = $navigation; $navigation = new navigationHistory; $navigation->unserialize($broken_navigation); } } else { tep_session_register('navigation'); $navigation = new navigationHistory; } $navigation->add_current_page();// Shopping cart actions if (isset($HTTP_GET_VARS['action'])) {// redirect the customer to a friendly cookie-must-be-enabled page if cookies are disabled if ($session_started == false) { tep_redirect(tep_href_link(FILENAME_COOKIE_USAGE)); } if (DISPLAY_CART == 'true') { $goto = FILENAME_SHOPPING_CART; $parameters = array('action', 'cPath', 'products_id', 'pid'); } else { $goto = basename($PHP_SELF); if ($HTTP_GET_VARS['action'] == 'buy_now') { $parameters = array('action', 'pid', 'products_id'); } else { $parameters = array('action', 'pid'); } } switch ($HTTP_GET_VARS['action']) { // customer wants to update the product quantity in their shopping cart case 'update_product' : for ($i=0, $n=sizeof($HTTP_POST_VARS['products_id']); $i<$n; $i++) { if (in_array($HTTP_POST_VARS['products_id'][$i], (is_array($HTTP_POST_VARS['cart_delete']) ? $HTTP_POST_VARS['cart_delete'] : array()))) { $cart->remove($HTTP_POST_VARS['products_id'][$i]); } else { if (PHP_VERSION < 4) { // if PHP3, make correction for lack of multidimensional array. reset($HTTP_POST_VARS); while (list($key, $value) = each($HTTP_POST_VARS)) { if (is_array($value)) { while (list($key2, $value2) = each($value)) { if (ereg ("(.*)\]\[(.*)", $key2, $var)) { $id2[$var[1]][$var[2]] = $value2; } } } } $attributes = ($id2[$HTTP_POST_VARS['products_id'][$i]]) ? $id2[$HTTP_POST_VARS['products_id'][$i]] : ''; } else { $attributes = ($HTTP_POST_VARS['id'][$HTTP_POST_VARS['products_id'][$i]]) ? $HTTP_POST_VARS['id'][$HTTP_POST_VARS['products_id'][$i]] : ''; } $cart->add_cart($HTTP_POST_VARS['products_id'][$i], $HTTP_POST_VARS['cart_quantity'][$i], $attributes, false); } } tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters))); break; // customer adds a product from the products page case 'add_product' : if (isset($HTTP_POST_VARS['products_id']) && is_numeric($HTTP_POST_VARS['products_id'])) { $cart->add_cart($HTTP_POST_VARS['products_id'], $cart->get_quantity(tep_get_uprid($HTTP_POST_VARS['products_id'], $HTTP_POST_VARS['id']))+1, $HTTP_POST_VARS['id']); } tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters))); break; // performed by the 'buy now' button in product listings and review page case 'buy_now' : if (isset($HTTP_GET_VARS['products_id'])) { if (tep_has_product_attributes($HTTP_GET_VARS['products_id'])) { tep_redirect(tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $HTTP_GET_VARS['products_id'])); } else { $cart->add_cart($HTTP_GET_VARS['products_id'], $cart->get_quantity($HTTP_GET_VARS['products_id'])+1); } } tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters))); break; case 'notify' : if (tep_session_is_registered('customer_id')) { if (isset($HTTP_GET_VARS['products_id'])) { $notify = $HTTP_GET_VARS['products_id']; } elseif (isset($HTTP_GET_VARS['notify'])) { $notify = $HTTP_GET_VARS['notify']; } elseif (isset($HTTP_POST_VARS['notify'])) { $notify = $HTTP_POST_VARS['notify']; } else { tep_redirect(tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action', 'notify')))); } if (!is_array($notify)) $notify = array($notify); for ($i=0, $n=sizeof($notify); $i<$n; $i++) { $check_query = tep_db_query("select count(*) as count from " . TABLE_PRODUCTS_NOTIFICATIONS . " where products_id = '" . $notify[$i] . "' and customers_id = '" . $customer_id . "'"); $check = tep_db_fetch_array($check_query); if ($check['count'] < 1) { tep_db_query("insert into " . TABLE_PRODUCTS_NOTIFICATIONS . " (products_id, customers_id, date_added) values ('" . $notify[$i] . "', '" . $customer_id . "', now())"); } } tep_redirect(tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action', 'notify')))); } else { $navigation->set_snapshot(); tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL')); } break; case 'notify_remove' : if (tep_session_is_registered('customer_id') && isset($HTTP_GET_VARS['products_id'])) { $check_query = tep_db_query("select count(*) as count from " . TABLE_PRODUCTS_NOTIFICATIONS . " where products_id = '" . $HTTP_GET_VARS['products_id'] . "' and customers_id = '" . $customer_id . "'"); $check = tep_db_fetch_array($check_query); if ($check['count'] > 0) { tep_db_query("delete from " . TABLE_PRODUCTS_NOTIFICATIONS . " where products_id = '" . $HTTP_GET_VARS['products_id'] . "' and customers_id = '" . $customer_id . "'"); } tep_redirect(tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')))); } else { $navigation->set_snapshot(); tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL')); } break; case 'cust_order' : if (tep_session_is_registered('customer_id') && isset($HTTP_GET_VARS['pid'])) { if (tep_has_product_attributes($HTTP_GET_VARS['pid'])) { tep_redirect(tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $HTTP_GET_VARS['pid'])); } else { $cart->add_cart($HTTP_GET_VARS['pid'], $cart->get_quantity($HTTP_GET_VARS['pid'])+1); } } tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters))); break; } }// include the who's online functions require(DIR_WS_FUNCTIONS . 'whos_online.php'); tep_update_whos_online();// include the password crypto functions require(DIR_WS_FUNCTIONS . 'password_funcs.php');// include validation functions (right now only email address) require(DIR_WS_FUNCTIONS . 'validations.php');// split-page-results require(DIR_WS_CLASSES . 'split_page_results.php');// infobox require(DIR_WS_CLASSES . 'boxes.php');// auto activate and expire banners require(DIR_WS_FUNCTIONS . 'banner.php'); tep_activate_banners(); tep_expire_banners();// auto expire special products require(DIR_WS_FUNCTIONS . 'specials.php'); tep_expire_specials();// calculate category path if (isset($HTTP_GET_VARS['cPath'])) { $cPath = $HTTP_GET_VARS['cPath']; } elseif (isset($HTTP_GET_VARS['products_id']) && !isset($HTTP_GET_VARS['manufacturers_id'])) { $cPath = tep_get_product_path($HTTP_GET_VARS['products_id']); } else { $cPath = ''; } if (tep_not_null($cPath)) { $cPath_array = tep_parse_category_path($cPath); $cPath = implode('_', $cPath_array); $current_category_id = $cPath_array[(sizeof($cPath_array)-1)]; } else { $current_category_id = 0; }// include the breadcrumb class and start the breadcrumb trail require(DIR_WS_CLASSES . 'breadcrumb.php'); $breadcrumb = new breadcrumb; $breadcrumb->add(HEADER_TITLE_TOP, HTTP_SERVER);// $breadcrumb->add(HEADER_TITLE_CATALOG, tep_href_link //(FILENAME_DEFAULT));// add category names or the manufacturer name to the breadcrumb trail if (isset($cPath_array)) { for ($i=0, $n=sizeof($cPath_array); $i<$n; $i++) { $categories_query = tep_db_query("select categories_name from " . TABLE_CATEGORIES_DESCRIPTION . " where categories_id = '" . (int)$cPath_array[$i] . "' and language_id = '" . (int)$languages_id . "'"); if (tep_db_num_rows($categories_query) > 0) { $categories = tep_db_fetch_array($categories_query); $breadcrumb->add($categories['categories_name'], tep_href_link(FILENAME_DEFAULT, 'cPath=' . implode('_', array_slice($cPath_array, 0, ($i+1))))); } else { break; } } } elseif (isset($HTTP_GET_VARS['manufacturers_id'])) { $manufacturers_query = tep_db_query("select manufacturers_name from " . TABLE_MANUFACTURERS . " where manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'"); if (tep_db_num_rows($manufacturers_query)) { $manufacturers = tep_db_fetch_array($manufacturers_query); $breadcrumb->add($manufacturers['manufacturers_name'], tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'])); } }// add the products model to the breadcrumb trail if (isset($HTTP_GET_VARS['products_id'])) { $model_query = tep_db_query("select products_model from " . TABLE_PRODUCTS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'"); if (tep_db_num_rows($model_query)) { $model = tep_db_fetch_array($model_query); $breadcrumb->add($model['products_model'], tep_href_link(FILENAME_PRODUCT_INFO, 'cPath=' . $cPath . '&products_id=' . $HTTP_GET_VARS['products_id'])); } }// initialize the message stack for output messages require(DIR_WS_CLASSES . 'message_stack.php'); $messageStack = new messageStack;// set which precautions should be checked define('WARN_INSTALL_EXISTENCE', 'true'); define('WARN_CONFIG_WRITEABLE', 'true'); define('WARN_SESSION_DIRECTORY_NOT_WRITEABLE', 'true'); define('WARN_SESSION_AUTO_START', 'true'); define('WARN_DOWNLOAD_DIRECTORY_NOT_READABLE', 'true'); // BOF: WebMakers.com Added: Header Tags Controller v2.5.7 require(DIR_WS_FUNCTIONS . 'header_tags.php');// Clean out HTML comments from ALT tags etc. require(DIR_WS_FUNCTIONS . 'clean_html_comments.php');// EOF: WebMakers.com Added: Header Tags Controller v2.5.7?> Edited May 25, 2006 by Jonas Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now