News:

Looking for documentation? Take a look on our wiki

Main Menu

Internal Server Error: JDatabaseMySQL::query: 1146

Started by freetran, May 07, 2013, 14:09:49 PM

Previous topic - Next topic

freetran

Hi all,

Not sure if that's the correct thread, pls advise where to move if not.

Joomla 2.5.11 Stable, VM 2.0.20b.

With the Debug Mode on, I got the following error in FF (20.0.1):
"JDatabaseMySQL::query: 1146 - Table 'osm3x_virtuemart_products_en-gb' doesn't exist SQL=SELECT `slug` FROM ... " (unfortunately the end is missing as I forgot to copy  :-[).

In Chrome it was working fine, I turned off debug. Now it works in FF as well.

The site is monolingual (Eng). Apparently, the table is called osm3x_virtuemart_products_en_gb (with underscore).

For now the issue is solved, but since we're going live very soon, I would really like to know what could cause this.

Do you happen to have any suggestions where to look for the erroneous table name?

Thanks!

jjk

From your description I can't tell what was wrong. You might go to 'Tools & Migration' and click on "Install or if necessary update tables".
Non-English Shops: Are your language files up to date?
http://virtuemart.net/community/translations

freetran

#2
Thanks for your reply, jjk.

Today I have more details as there are more errors. Now I do not get 500, but just an error message on the front end. Please see the screenshot attached.

Basically, what we're currently doing is configuring shipping and payment methods. I manage to checkout with PayPal sandbox despite the errors though.

I did Install/Update Tables - no luck.

Do you have any clues of what could be happening or how to fix this?

Your help would be greatly appreciated.

Thanks

[attachment cleanup by admin]

freetran

I hope I'm the one with such an issue...

Anyway - if someone else has it, here's what helped:

in administrator/components/com_virtuemart/helpers

in vmtable.php, on line 338, I changed:


if($this->_translatable){
$mainTable = $this->_tbl.'_'.VMLANG ;
$select = 'SELECT `'.$mainTable.'`.* ,`'.$this->_tbl.'`.* ';
$from   = ' FROM `'.$mainTable.'` JOIN '.$this->_tbl.' using (`'.$this->_tbl_key.'`)';
}

to

if($this->_translatable){
$mainTable = $this->_tbl.'_'.'en_gb' ;
$select = 'SELECT `'.$mainTable.'`.* ,`'.$this->_tbl.'`.* ';
$from   = ' FROM `'.$mainTable.'` JOIN '.$this->_tbl.' using (`'.$this->_tbl_key.'`)';
}


Could anyone help me figure out why VMLANG got the value of 'en-gb'?

Thanks

stresskills

I just want to confirm the install update tables worked for me for the 1146 error.
Thank you!
"If you think you can do a thing or think you can't do a thing, you're right." Henry Ford