Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

[CONTRIBUTION] File uploads as an Option Feature


Guest

Recommended Posts

Matt

 

I am still getting this error

 

1054 - Unknown column 'popt.products_options_comment' in 'field list'

 

select distinct popt.products_options_id, popt.products_options_name, popt.products_options_type, popt.products_options_length, popt.products_options_comment from products_options popt, products_attributes patrib where patrib.products_id='63' and patrib.options_id = popt.products_options_id and popt.language_id = '1' order by popt.products_options_name

 

[TEP STOP]

 

 

I have tried your new databse queries and no difference, I noticed one guy further up th epost had this same problem but he fixed it, what do I need to do to fix it.

 

This is driving me mad because I have followed everyones instructions to the letter and it still doesn't work, what am I missing.

 

Cheers

Steve

Link to comment
Share on other sites

  • Replies 482
  • Created
  • Last Reply

Top Posters In This Topic

1054 - Unknown column 'popt.products_options_comment' in 'field list'

 

select distinct popt.products_options_id, popt.products_options_name, popt.products_options_type, popt.products_options_length, popt.products_options_comment from products_options popt, products_attributes patrib where patrib.products_id='63' and patrib.options_id = popt.products_options_id and popt.language_id = '1' order by popt.products_options_name

Did you import option_type_feature.sql? It includes the following changes to the database (the third ADD is what you seem to be missing):

ALTER TABLE products_options
 ADD products_options_type INT( 5 ) NOT NULL ,
 ADD products_options_length SMALLINT( 2 ) DEFAULT '32' NOT NULL ,
 ADD products_options_comment VARCHAR( 32 );

Hth,

Matt

Link to comment
Share on other sites

Hi Matt

 

It is ok crisis averted I have found the problem.

 

I did have all the correct fields in place but I had put an s on the end of comments instead of comment.

 

Muppet mistake but found and solved now, now I need to solve my next problem of why my prices are no longer being displayed. also why the text option works up until I get the order email and the word TEXT is displayed instead of the inputted text but i am sure I read about this problem somewhere I just need to find where.

 

Cheers

Steve

Link to comment
Share on other sites

Ok me again

 

I installed your upload options and now I have a new problem which is confusing me.

 

My admin panel works but when I go to select the attributes option I get the following

 

1146 - Table 'JK56CMK1.TABLE_PRODUCTS_OPTIONS_TYPES' doesn't exist

 

select products_options_types_id, products_options_types_name from TABLE_PRODUCTS_OPTIONS_TYPES where language_id='1' order by products_options_types_id

 

[TEP STOP]

 

 

which is bizarre because my database says.

 

Table-Properties for JK56CMK1: products_options_types

 

products_options_types_id int(11) No 0

products_options_types_name varchar(32) Yes

language_id int(11) No 0

 

and when I view the data tab I see

 

0 Select 1

1 Text 1

2 Radio 1

3 Checkbox 1

4 File 1

 

and when I view the database I can see the comments that were added.

 

so what is wrong now??? I have checked for spelling mistakes and there are none.

 

The table does exist the fields do exist.

 

I ran all 3 of your sql scripts.

 

Cheers

Steve

Link to comment
Share on other sites

1146 - Table 'JK56CMK1.TABLE_PRODUCTS_OPTIONS_TYPES' doesn't exist

 

select products_options_types_id, products_options_types_name from TABLE_PRODUCTS_OPTIONS_TYPES where language_id='1' order by products_options_types_id

 

[TEP STOP]

I had the exact same thing to happen. Followed the documentation as clearly as I could after reading through the messages here once more. Only had to merge 1-2 files that had customization in them.

 

Interestingly enough, if you run that sql query by hand in the sql monitor, you get the same error message. IF YOU TAKE OUT THE TABLE_ AND DROP IT TO LOWERCASE IT WORKS!

 

Go figure.

 

All the other queries in that file have TABLE_ in front of them, and they are uppercase. And they work.

 

But this one doesn't work unless you edit the query to be lowercase without the TABLE_ in front of it.

 

OK. Now that I've debugged it, somebody PLEASE tell me why it wouldn't work the first time. And what do we need to do (step by step) to get it to work without this hack?

Link to comment
Share on other sites

Hi artsypuzzle

 

Thanks for the reply but I am still confused!

 

Where exactly do I need to edit out the TABLE_ ?

 

in the query string itself all is in lowercase and in the database all is in lowercase and the word TABLE_ doesn't appear so where do I need to edit it.

 

it only appears in capitals in the error message.

 

Sorry for being a bit dim but I am mega new to mysql and php.

 

Cheers

 

Steve

Link to comment
Share on other sites

Hi artsypuzzle

 

Thanks for the reply but I am still confused!

 

Where exactly do I need to edit out the TABLE_ ?

 

in the query string itself all is in lowercase and in the database all is in lowercase and the word TABLE_ doesn't appear so where do I need to edit it.

 

it only appears in capitals in the error message.

 

Sorry for being a bit dim but I am mega new to mysql and php.

 

Cheers

 

Steve

Don't have a shell open, but I believe it's either in upload.php or application_top.php. Search for that string in the files, and you will see it in all caps with the TABLE_ at the beginning. When I took off the TABLE_ and switched to lowercase, it worked.

 

But I still need help with my questions... :unsure:

Link to comment
Share on other sites

A better way of fixing is to add

  define('TABLE_PRODUCTS_OPTIONS_TYPES', 'products_options_types');

in among the defines in admin/includes/database_tables.php. This is a contribution packaging mistake. I'll upload a v.77 sometime within the next week or so to fix this.

 

For future reference, ANYTHING_IN_ALL_CAPS usually means that a define is missing. Same thing with the prefixes TABLE_ or FILENAME_.

 

Hth,

Matt

Link to comment
Share on other sites

I'm kind of a newbie to these things, so please forgive me. In your installation instructions, you say

STEP 1. Add new fields to db

 

You can use the enclosed option_type_feature.sql and files_uploaded.sql to add the new fields. Use insert_text_option_value.sql to create the TEXT option_value of 0.

 

How exactly do I do this?

Link to comment
Share on other sites

In phpMyAdmin, you would select your database and then select the SQL tab. On that page, there should be a browse button. If you click it and select the first of the files mentioned, then select go. It should tell you that it successfully ran the queries. Repeat for the other two files.

 

If you don't have phpMyAdmin, how can you connect to the database? You might have to ask your host for help with this.

 

Hth,

Matt

Link to comment
Share on other sites

A better way of fixing is to add
 ?define('TABLE_PRODUCTS_OPTIONS_TYPES', 'products_options_types');

in among the defines in admin/includes/database_tables.php. This is a contribution packaging mistake. I'll upload a v.77 sometime within the next week or so to fix this.

 

For future reference, ANYTHING_IN_ALL_CAPS usually means that a define is missing. Same thing with the prefixes TABLE_ or FILENAME_.

 

Hth,

Matt

Hi Matt

 

Already tried this yesterday because I noticed it wasn't defined but it still doesn't work I will give the other workaround a go and see what happens.

 

Cheers

 

Steve

Link to comment
Share on other sites

Hi,

 

when i define an option for a file upload i get following error message when i try to put an article into the basket:

 

Parse error: parse error, unexpected '{' in /var/www/web_gdm/htdocs/shop/catalog/includes/classes/upload.php on line 74

 

Fatal error: Cannot instantiate non-existent class: upload in /var/www/web_gdm/htdocs/oshop/catalog/includes/application_top.php on line 372

 

What can i do ?

 

I am also missing the comment functionality for the options.

 

Greetings

 

Wolfgang

Link to comment
Share on other sites

It looks like line 74 is missing a )

        if (tep_not_null($file['size']) and ($file['size'] > 307200) {

should be

        if (tep_not_null($file['size']) and ($file['size'] > 307200)) {

You may want to change the 307200 to something else. That value is better set in php.ini or .htaccess anyway.

 

There is no admin interface for the comments. You need to add them directly into the database if you want to use them.

 

The edit function on this forum is time limited (5 minutes?). After the time limit, one can no longer edit the post. If you load the page before the time limit has passed but click on the button after, it will throw an error.

 

Hth,

Matt

Link to comment
Share on other sites

Hi,

 

thanks for the help. But here is the next problem....

 

When i try to upload a file, i'll always get the message "Error: destination does not exist.".

 

The changes in the configure.php have been made:

 

define('DIR_WS_UPLOADS', DIR_WS_IMAGES . 'uploads/');

define('DIR_FS_UPLOADS', DIR_FS_CATALOG . DIR_WS_UPLOADS);

 

The "uploads"-directory is writable, i don't know what to do.

 

Wolfgang

Link to comment
Share on other sites

Hi,

 

This is a great contribution. I've tried to get the add to cart page to display a "please wait " type message to let the user know not to press anything and that their files are uploading as it's not very obvious at the moment but I can't figure out how.

 

Can anyone?

 

Nik

Link to comment
Share on other sites

  • 2 weeks later...

I am running into problems with the upload feature for File Upload .77 and hope someone can help me. I have read through and compared!! all prior posts in this support area but am still getting the same errors.

 

The oscommerce version I am running is 2.2MS2.

 

The error I am receiving is - Error: destination does not exist.

 

I read the fix on page 5 but it is already corrected in this version of the contribution. My upload folder is set with the 777 permissions. I have dug through each of the relative pages for code misspellings etc. but cannot find anything.

 

I am wondering if my problems are due to having 2 different configure.php files in my catalog.

 

One is located in catalog/includes/, the other is located in catalog/includes/local/

 

The configure.php file I modified with the -

 

define('DIR_WS_UPLOADS', DIR_WS_IMAGES . 'uploads/');

define('DIR_FS_UPLOADS', DIR_FS_CATALOG . DIR_WS_UPLOADS);

 

is located in the catalog/includes/ folder. I've tried it with adding the above to the catalog/includes/local/configure.php file as well and I still get the same error message.

 

I'm completely stumped and was wondering if anyone had any ideas as to something I haven't looked at yet?

 

Any help is greatly appreciated!!

Link to comment
Share on other sites

The error I am receiving is - Error: destination does not exist.

 

I read the fix on page 5 but it is already corrected in this version of the contribution. My upload folder is set with the 777 permissions. I have dug through each of the relative pages for code misspellings etc. but cannot find anything.

 

I am wondering if my problems are due to having 2 different configure.php files in my catalog.

The local file is for development use. Settings in it override those in the regular file. I would take the changes out of the local file and leave them just in the regular, includes/configure.php file.

 

Is the directory named upload or uploads? It needs to match the value set in the configure.php file (or vice versa).

 

For troubleshooting purposes, you might want to change the following lines in the includes/languages/english.php file to look like this:

define('ERROR_DESTINATION_NOT_WRITEABLE', 'Error:  destination (%s) not writeable.');
define('ERROR_DESTINATION_DOES_NOT_EXIST', 'Error: destination (%s) does not exist.');

This will allow you to see what the destination actually is.

 

Hth,

Matt

Link to comment
Share on other sites

Thank You Matt!!

 

I now see why it is returning the error, but I'm not real sure where to correct it.

 

The error now displays as -

 

Error: destination (/hsphere/local/home/oscom/createacard.net/catalogimages/uploads/) does not exist

 

There is a / missing between "catalog" & "images"....

Where should I fix this?

 

Thanks in advance

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...