Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Product extra fields


takis

Recommended Posts

i installed the contribution Product extra fields but now in the admin panel when i press the button <Products extra fields> i take this message !

 

"Parse error: parse error, unexpected T_REQUIRE in /home/xxxxx/xxxxxx/shop/admin/product_extra_fields.php on line 1

 

Below is the code of the file product_extra_fields.php

 

Please if someone knows something about this error help me. Thanks to all

 

 

<?php

/*

$Id: product_extra_field.php,v 2.0 2004/11/09 22:50:52 ChBu Exp $

 

osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com

 

Copyright © 2003 osCommerce

 

Released under the GNU General Public License

*

* v2.0: added languages support

*/

require('includes/application_top.php');

 

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

// Has "Remove" button been pressed?

if (isset($HTTP_POST_VARS['remove_x']) || isset($HTTP_POST_VARS['remove_y'])) $action='remove';

 

if (tep_not_null($action)) {

switch ($action) {

case 'setflag':

$sql_data_array = array('products_extra_fields_status' => tep_db_prepare_input($HTTP_GET_VARS['flag']));

tep_db_perform(TABLE_PRODUCTS_EXTRA_FIELDS, $sql_data_array, 'update', 'products_extra_fields_id=' . $HTTP_GET_VARS['id']);

tep_redirect(tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS));

break;

case 'add':

$sql_data_array = array('products_extra_fields_name' => tep_db_prepare_input($HTTP_POST_VARS['field']['name']),

'languages_id' => tep_db_prepare_input ($HTTP_POST_VARS['field']['language']),

'products_extra_fields_order' => tep_db_prepare_input($HTTP_POST_VARS['field']['order']));

tep_db_perform(TABLE_PRODUCTS_EXTRA_FIELDS, $sql_data_array, 'insert');

 

tep_redirect(tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS));

break;

case 'update':

foreach ($HTTP_POST_VARS['field'] as $key=>$val) {

$sql_data_array = array('products_extra_fields_name' => tep_db_prepare_input($val['name']),

'languages_id' => tep_db_prepare_input($val['language']),

'products_extra_fields_order' => tep_db_prepare_input($val['order']));

tep_db_perform(TABLE_PRODUCTS_EXTRA_FIELDS, $sql_data_array, 'update', 'products_extra_fields_id=' . $key);

}

tep_redirect(tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS));

 

break;

case 'remove':

//print_r($HTTP_POST_VARS['mark']);

if ($HTTP_POST_VARS['mark']) {

foreach ($HTTP_POST_VARS['mark'] as $key=>$val) {

tep_db_query("DELETE FROM " . TABLE_PRODUCTS_EXTRA_FIELDS . " WHERE products_extra_fields_id=" . tep_db_input($key));

tep_db_query("DELETE FROM " . TABLE_PRODUCTS_TO_PRODUCTS_EXTRA_FIELDS . " WHERE products_extra_fields_id=" . tep_db_input($key));

}

tep_redirect(tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS));

}

 

break;

}

}

 

// Put languages information into an array for drop-down boxes

$languages=tep_get_languages();

$values[0]=array ('id' =>'0', 'text' => TEXT_ALL_LANGUAGES);

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

$values[$i+1]=array ('id' =>$languages[$i]['id'], 'text' =>$languages[$i]['name']);

}

 

?>

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

<html <?php echo HTML_PARAMS; ?>>

<head>

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

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

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

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

</head>

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

<!-- header //-->

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

<!-- header_eof //-->

 

<!-- body //-->

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

<tr>

<td width="<?php echo BOX_WIDTH; ?>" valign="top">

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

<!-- left_navigation //-->

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

<!-- left_navigation_eof //-->

</table>

</td>

<!-- body_text //-->

<td width="100%" valign="top">

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

<tr>

<td width="100%">

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

<tr>

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

</tr>

</table>

</td>

</tr>

 

<tr>

<td width="100%">

<!--

<div style="font-family: verdana; font-weight: bold; font-size: 17px; margin-bottom: 8px; color: #727272;">

<?php echo SUBHEADING_TITLE; ?>

</div>

-->

<br />

<?php //echo tep_draw_form("add_field", FILENAME_PRODUCTS_EXTRA_FIELDS, 'action=add', 'post'); ?>

 

<?php echo tep_draw_form('add_field', FILENAME_PRODUCTS_EXTRA_FIELDS, 'action=add', 'post'); ?>

<table border="0" width="400" cellspacing="0" cellpadding="2">

<tr class="dataTableHeadingRow">

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

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_ORDER; ?></td>

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_LANGUAGE; ?></td>

</tr>

 

<tr>

<td class="dataTableContent">

<?php echo tep_draw_input_field('field[name]', $field['name'], 'size=30', false, 'text', true);?>

</td>

<td class="dataTableContent" align="center">

<?php echo tep_draw_input_field('field[order]', $field['order'], 'size=5', false, 'text', true);?>

</td>

<td class="dataTableContent" align="center">

<?php

echo tep_draw_pull_down_menu('field[language]', $values, '0', '');?>

</td>

<td class="dataTableHeadingContent" align="right">

<?php echo tep_image_submit('button_add_field.gif',IMAGE_ADD_FIELD)?>

</td>

</tr>

</form>

</table>

<hr />

<br>

<?php

echo tep_draw_form('extra_fields', FILENAME_PRODUCTS_EXTRA_FIELDS,'action=update','post');

?>

<?php echo $action_message; ?>

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

<tr class="dataTableHeadingRow">

<td class="dataTableHeadingContent" width="20"> </td>

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

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_ORDER; ?></td>

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_LANGUAGE; ?></td>

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_STATUS; ?></td>

</tr>

<?php

$products_extra_fields_query = tep_db_query("SELECT * FROM " . TABLE_PRODUCTS_EXTRA_FIELDS . " ORDER BY products_extra_fields_order");

while ($extra_fields = tep_db_fetch_array($products_extra_fields_query)) {

?>

<tr>

<td width="20">

<?php echo tep_draw_checkbox_field('mark['.$extra_fields['products_extra_fields_id'].']', 1) ?>

</td>

<td class="dataTableContent">

<?php echo tep_draw_input_field('field['.$extra_fields['products_extra_fields_id'].'][name]', $extra_fields['products_extra_fields_name'], 'size=30', false, 'text', true);?>

</td>

<td class="dataTableContent" align="center">

<?php echo tep_draw_input_field('field['.$extra_fields['products_extra_fields_id'].'][order]', $extra_fields['products_extra_fields_order'], 'size=5', false, 'text', true);?>

</td>

<td class="dataTableContent" align="center">

<?php echo tep_draw_pull_down_menu('field['.$extra_fields['products_extra_fields_id'].'][language]', $values, $extra_fields['languages_id'], ''); ?>

</td>

<td class="dataTableContent" align="center">

<?php

if ($extra_fields['products_extra_fields_status'] == '1') {

echo tep_image(DIR_WS_IMAGES . 'icon_status_green.gif', IMAGE_ICON_STATUS_GREEN, 10, 10) . '  <a href="' . tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS, 'action=setflag&flag=0&id=' . $extra_fields['products_extra_fields_id'], 'NONSSL') . '">' . tep_image(DIR_WS_IMAGES . 'icon_status_red_light.gif', IMAGE_ICON_STATUS_RED_LIGHT, 10, 10) . '</a>';

}

else {

echo '<a href="' . tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS, 'action=setflag&flag=1&id=' . $extra_fields['products_extra_fields_id'], 'NONSSL') . '">' . tep_image(DIR_WS_IMAGES . 'icon_status_green_light.gif', IMAGE_ICON_STATUS_GREEN_LIGHT, 10, 10) . '</a>  ' . tep_image(DIR_WS_IMAGES . 'icon_status_red.gif', IMAGE_ICON_STATUS_RED, 10, 10);

}

?>

</td>

</tr>

<?php } ?>

<tr>

<td colspan="4">

<?php echo tep_image_submit('button_update_fields.gif',IMAGE_UPDATE_FIELDS)?>

  

<?php echo tep_image_submit('button_remove_fields.gif',IMAGE_REMOVE_FIELDS,'name="remove"')?>

</td>

</tr>

</form>

</table>

</td>

</tr>

</table>

</td>

<!-- body_text_eof //-->

</tr>

</table>

<!-- body_eof //-->

 

<!-- footer //-->

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

<!-- footer_eof //-->

</body>

</html>

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

 

Forum: General Contribution Support · Post Preview: #1136257 · Replies: 0 · Views: 0

 

 

 

[Contirbution] Header Tags Controller for Admin MS

Link to comment
Share on other sites

  • 1 year later...

Dunno if you fixed this, but the issue is a corrupt file.

 

Replace your code with this:

 

 

<?php

/*

$Id: product_extra_field.php,v 2.0 2004/11/09 22:50:52 ChBu Exp $

 

osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com

 

Copyright © 2003 osCommerce

 

Released under the GNU General Public License

*

* v2.0: added languages support

*/

require('includes/application_top.php');

 

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

// Has "Remove" button been pressed?

if (isset($HTTP_POST_VARS['remove_x']) || isset($HTTP_POST_VARS['remove_y'])) $action='remove';

 

if (tep_not_null($action)) {

switch ($action) {

case 'setflag':

$sql_data_array = array('products_extra_fields_status' => tep_db_prepare_input($HTTP_GET_VARS['flag']));

tep_db_perform(TABLE_PRODUCTS_EXTRA_FIELDS, $sql_data_array, 'update', 'products_extra_fields_id=' . $HTTP_GET_VARS['id']);

tep_redirect(tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS));

break;

case 'add':

$sql_data_array = array('products_extra_fields_name' => tep_db_prepare_input($HTTP_POST_VARS['field']['name']),

'languages_id' => tep_db_prepare_input ($HTTP_POST_VARS['field']['language']),

'products_extra_fields_order' => tep_db_prepare_input($HTTP_POST_VARS['field']['order']));

tep_db_perform(TABLE_PRODUCTS_EXTRA_FIELDS, $sql_data_array, 'insert');

 

tep_redirect(tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS));

break;

case 'update':

foreach ($HTTP_POST_VARS['field'] as $key=>$val) {

$sql_data_array = array('products_extra_fields_name' => tep_db_prepare_input($val['name']),

'languages_id' => tep_db_prepare_input($val['language']),

'products_extra_fields_order' => tep_db_prepare_input($val['order']));

tep_db_perform(TABLE_PRODUCTS_EXTRA_FIELDS, $sql_data_array, 'update', 'products_extra_fields_id=' . $key);

}

tep_redirect(tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS));

 

break;

case 'remove':

//print_r($HTTP_POST_VARS['mark']);

if ($HTTP_POST_VARS['mark']) {

foreach ($HTTP_POST_VARS['mark'] as $key=>$val) {

tep_db_query("DELETE FROM " . TABLE_PRODUCTS_EXTRA_FIELDS . " WHERE products_extra_fields_id=" . tep_db_input($key));

tep_db_query("DELETE FROM " . TABLE_PRODUCTS_TO_PRODUCTS_EXTRA_FIELDS . " WHERE products_extra_fields_id=" . tep_db_input($key));

}

tep_redirect(tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS));

}

 

break;

}

}

 

// Put languages information into an array for drop-down boxes

$languages=tep_get_languages();

$values[0]=array ('id' =>'0', 'text' => TEXT_ALL_LANGUAGES);

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

$values[$i+1]=array ('id' =>$languages[$i]['id'], 'text' =>$languages[$i]['name']);

}

 

?>

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

<html <?php echo HTML_PARAMS; ?>>

<head>

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

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

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

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

</head>

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

<!-- header //-->

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

<!-- header_eof //-->

 

<!-- body //-->

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

<tr>

<td width="<?php echo BOX_WIDTH; ?>" valign="top">

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

<!-- left_navigation //-->

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

<!-- left_navigation_eof //-->

</table>

</td>

<!-- body_text //-->

<td width="100%" valign="top">

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

<tr>

<td width="100%">

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

<tr>

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

</tr>

</table>

</td>

</tr>

 

<tr>

<td width="100%">

<!--

<div style="font-family: verdana; font-weight: bold; font-size: 17px; margin-bottom: 8px; color: #727272;">

<?php echo SUBHEADING_TITLE; ?>

</div>

-->

<br />

<?php //echo tep_draw_form("add_field", FILENAME_PRODUCTS_EXTRA_FIELDS, 'action=add', 'post'); ?>

 

<?php echo tep_draw_form('add_field', FILENAME_PRODUCTS_EXTRA_FIELDS, 'action=add', 'post'); ?>

<table border="0" width="400" cellspacing="0" cellpadding="2">

<tr class="dataTableHeadingRow">

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

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_ORDER; ?></td>

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_LANGUAGE; ?></td>

</tr>

 

<tr>

<td class="dataTableContent">

<?php echo tep_draw_input_field('field[name]', $field['name'], 'size=30', false, 'text', true);?>

</td>

<td class="dataTableContent" align="center">

<?php echo tep_draw_input_field('field[order]', $field['order'], 'size=5', false, 'text', true);?>

</td>

<td class="dataTableContent" align="center">

<?php

echo tep_draw_pull_down_menu('field[language]', $values, '0', '');?>

</td>

<td class="dataTableHeadingContent" align="right">

<?php echo tep_image_submit('button_add_field.gif',IMAGE_ADD_FIELD)?>

</td>

</tr>

</form>

</table>

<hr />

<br>

<?php

echo tep_draw_form('extra_fields', FILENAME_PRODUCTS_EXTRA_FIELDS,'action=update','post');

?>

<?php echo $action_message; ?>

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

<tr class="dataTableHeadingRow">

<td class="dataTableHeadingContent" width="20"> </td>

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

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_ORDER; ?></td>

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_LANGUAGE; ?></td>

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_STATUS; ?></td>

</tr>

<?php

$products_extra_fields_query = tep_db_query("SELECT * FROM " . TABLE_PRODUCTS_EXTRA_FIELDS . " ORDER BY products_extra_fields_order");

while ($extra_fields = tep_db_fetch_array($products_extra_fields_query)) {

?>

<tr>

<td width="20">

<?php echo tep_draw_checkbox_field('mark['.$extra_fields['products_extra_fields_id'].']', 1) ?>

</td>

<td class="dataTableContent">

<?php echo tep_draw_input_field('field['.$extra_fields['products_extra_fields_id'].'][name]', $extra_fields['products_extra_fields_name'], 'size=30', false, 'text', true);?>

</td>

<td class="dataTableContent" align="center">

<?php echo tep_draw_input_field('field['.$extra_fields['products_extra_fields_id'].'][order]', $extra_fields['products_extra_fields_order'], 'size=5', false, 'text', true);?>

</td>

<td class="dataTableContent" align="center">

<?php echo tep_draw_pull_down_menu('field['.$extra_fields['products_extra_fields_id'].'][language]', $values, $extra_fields['languages_id'], ''); ?>

</td>

<td class="dataTableContent" align="center">

<?php

if ($extra_fields['products_extra_fields_status'] == '1') {

echo tep_image(DIR_WS_IMAGES . 'icon_status_green.gif', IMAGE_ICON_STATUS_GREEN, 10, 10) . ' <a href="' . tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS, 'action=setflag&flag=0&id=' . $extra_fields['products_extra_fields_id'], 'NONSSL') . '">' . tep_image(DIR_WS_IMAGES . 'icon_status_red_light.gif', IMAGE_ICON_STATUS_RED_LIGHT, 10, 10) . '</a>';

}

else {

echo '<a href="' . tep_href_link(FILENAME_PRODUCTS_EXTRA_FIELDS, 'action=setflag&flag=1&id=' . $extra_fields['products_extra_fields_id'], 'NONSSL') . '">' . tep_image(DIR_WS_IMAGES . 'icon_status_green_light.gif', IMAGE_ICON_STATUS_GREEN_LIGHT, 10, 10) . '</a> ' . tep_image(DIR_WS_IMAGES . 'icon_status_red.gif', IMAGE_ICON_STATUS_RED, 10, 10);

}

?>

</td>

</tr>

<?php } ?>

<tr>

<td colspan="4">

<?php echo tep_image_submit('button_update_fields.gif',IMAGE_UPDATE_FIELDS)?>

 

<?php echo tep_image_submit('button_remove_fields.gif',IMAGE_REMOVE_FIELDS,'name="remove"')?>

</td>

</tr>

</form>

</table>

</td>

</tr>

</table>

</td>

<!-- body_text_eof //-->

</tr>

</table>

<!-- body_eof //-->

 

<!-- footer //-->

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

<!-- footer_eof //-->

</body>

</html>

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

Link to comment
Share on other sites

  • 2 months later...

Takis, did the code posted by DataMouse solve the problem for you?

 

Datamouse, you say that the file is corrupt, but I am trying to understand exactly what the problem is, could you please be more specific about the problem within the original code which causes the error? I have tried using the code you posted for Takis instead, but it makes no difference in my case, the same error still remains.

 

I am using osC v2.2 RC 2a (totally can install); the version of "Product Extra Fields" I have tried to install is the one by "wdepot" published on 13 June 2008. I have not installed any of the more recent fixes listed on the contribution page.

 

I should point out that I have followed the instructions that come with the contribution to the letter; the only part of the instructions that I did not implement were the two optional steps 12 and 13.

 

If anyone can help me to understand why this is not working for me, I would be most grateful.

 

The error I am getting is identical to Takis': "Parse error: syntax error, unexpected T_REQUIRE in /home/cy8urg/public_html/admin/product_extra_fields.php on line 1"

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...