Virtuemart 4.0.6
Joomla 4.15
Working fine with php 7.4, but if I switch to php v 8.0 I have an error when trying to edit a product in Virtuemart Admin..
Unsupported operand types: string + int
and the product details will not display.
Any help would be appreciated, thanks
wait for version for PHP8 :)
I have a choice on my hosting account 8.0 (which is what I am trying) and 8.1
cheers
My original post should have said php 8.0
Since your reply I just tried 8.1 and have the same error/problem with that php version too
Our hosting is from PHP52 to PHP8.1
cheers too 8)
Same problem with Joomla 3.10.10 and PHP 8.0.
Error in front end: Unsupported operand types: string % string
It works fine with PHP 7.4
Does anyone have a clue ?
Thanks
VM 4.0.6
Same problem with Joomla 3.10.10 and PHP 8.0.
Error in front end: Unsupported operand types: string % string
It works fine with PHP 7.4
Does anyone have a clue ?
Thanks
supply the bug trace with debugging so we know where it is happening...
Hi,
in php 8, with the debug mode, the page remains blank.
Here is the code from the previous page that calls the product categories. Thanks.
{
"__default": {
"session": {
"counter": 42,
"timer": {
"start": 1659594535,
"last": 1659688896,
"now": 1659688900
},
"token": "s3VZZJHjSFZhQrTj5QmVHFxOfhZa7i7d"
},
"registry": {
"com_virtuemart": {
"category": {
"limit": ""
},
"categoryc13m0": {
"limitstart": 0
},
"categoryc23m0": {
"limitstart": 0
},
"categoryc15m0": {
"limitstart": 0
}
}
},
"user": {
"id": 0,
"name": null,
"username": null,
"email": null,
"password": null,
"password_clear": "",
"block": null,
"sendEmail": 0,
"registerDate": null,
"lastvisitDate": null,
"activation": null,
"params": null,
"groups": [],
"guest": 1,
"lastResetTime": null,
"resetCount": null,
"requireReset": null,
"aid": 0
},
"plg_system_languagefilter": {
"language": "fr-FR"
}
},
"__vm": {
"manage": 0,
"vmlastvisitedItemid": 123,
"vmlastvisitedcategoryid": 0,
"vmlastvisitedmanuid": 0,
"vmcartlastVendorId": 1
}
}
If you have a blank page, activate the debug log file in PHP. So you have the informations
But blank page should show the php debug trace if you have set it correctly
VirtueMart 4.0.6 10690
php 8.0
joomla 3.10.11
Error: 0 Unsupported operand types: string + int
Call stack
# Function Location
1 () JROOT/administrator/components/com_virtuemart/helpers/mediahandler.php:1314
2 VmMediaHandler->displayFileHandler() JROOT/administrator/components/com_virtuemart/helpers/mediahandler.php:1106
3 VmMediaHandler->displayFilesHandler() JROOT/components/com_virtuemart/views/user/tmpl/edit_vendor.php:116
4 include() JROOT/libraries/src/MVC/View/HtmlView.php:701
5 Joomla\CMS\MVC\View\HtmlView->loadTemplate() JROOT/components/com_virtuemart/helpers/shopfunctionsf.php:1067
6 shopFunctionsF::buildTabs() JROOT/components/com_virtuemart/views/user/tmpl/edit.php:73
7 include() JROOT/libraries/src/MVC/View/HtmlView.php:701
8 Joomla\CMS\MVC\View\HtmlView->loadTemplate() JROOT/components/com_virtuemart/helpers/vmview.php:69
9 VmView->display() JROOT/components/com_virtuemart/views/user/view.html.php:245
10 VirtuemartViewUser->display() JROOT/components/com_virtuemart/controllers/user.php:59
11 VirtueMartControllerUser->display() JROOT/libraries/src/MVC/Controller/BaseController.php:702
12 Joomla\CMS\MVC\Controller\BaseController->execute() JROOT/components/com_virtuemart/virtuemart.php:114
13 require_once() JROOT/libraries/src/Component/ComponentHelper.php:402
14 Joomla\CMS\Component\ComponentHelper::executeComponent() JROOT/libraries/src/Component/ComponentHelper.php:377
15 Joomla\CMS\Component\ComponentHelper::renderComponent() JROOT/libraries/src/Application/SiteApplication.php:194
16 Joomla\CMS\Application\SiteApplication->dispatch() JROOT/libraries/src/Application/SiteApplication.php:233
17 Joomla\CMS\Application\SiteApplication->doExecute() JROOT/libraries/src/Application/CMSApplication.php:225
18 Joomla\CMS\Application\CMSApplication->execute() JROOT/index.php:49
imho fixed in vm4.0.8, but tomorrow comes 4.0.10
When viewing cart in front end we get "Unsupported operand types: string * float". Works with PHP 7.4. With PHP8 we get the error. Any ideas?
Joomla 3.10.11
Virtuemart 4.0.12 10777
PHP 8.1.14
MySQLi 5.7.35
Maybe coming from your template. Try Protostar?
Providing an error trace would show the source of the error. In Joomla Global Configuration set "Error Reporting" as "Maximum" and enable the "Debugging" option. In VirtueMart Configuration and set PHP Development mode for "all".
Thank you for the reply.
We tried with the Protostar - same error.
Switched the error reporting to Maximum and now both front end and back end are broken . The page only says:
-----------------QUOTE------------
Deprecated: Joomla\Input\Input implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in /home/username/public_html/libraries/vendor/joomla/input/src/Input.php on line 41
Deprecated: Return type of Joomla\Input\Input::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/username/public_html/libraries/vendor/joomla/input/src/Input.php on line 170
Deprecated: Joomla\CMS\Input\Input implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in /home/username/public_html/libraries/src/Input/Input.php on line 31
Warning: session_name(): Session name cannot be changed after headers have already been sent in /home/username/public_html/libraries/joomla/session/handler/native.php on line 128
Deprecated: Joomla\CMS\Input\Cookie implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in /home/username/public_html/libraries/src/Input/Cookie.php on line 0
Warning: session_cache_limiter(): Session cache limiter cannot be changed after headers have already been sent in /home/username/public_html/libraries/joomla/session/handler/native.php on line 235
Error: Failed to start application: Failed to start the session because headers have already been sent by "/home/username/public_html/libraries/vendor/joomla/input/src/Input.php" at line 41.
-----------END OF QUOTE ---------
Everything worked with PHP7.4.
Any help will be greatly appreciated.
This is not an error trace ... this is error reporting which is breaking your session header etc
https://forum.virtuemart.net/index.php?topic=117042.msg470068#msg470068
or try again with reporting set to default and the debug plugin enabled but all options set to off if u run out of memory
Yes! I know what a backtrace is and how to find the problem in logs. It was just not showing. :)
I finally found out what was the problem. After upgrading to Joomla 4 I managed to switch on the error reporting and get the trace. It was a third party payment module that had the problem and when I fixed it wit adding (float) before the string in the problematic line everything worked perfectly.
I am now sending the problem to the guys that wrote the plugin so they can apply it.
Thank you very much for the time you spent with my problem.
Kind Regards,
Stefan
Hi Have problem with BACKEND ov VIRTUEMART when use PHP 8.1
Using PHP 8.1 - Give me error when I try to edit a product from backend.
Are we sure that VM VirtueMart 4.0.12 10777 (I have this versione) is fully compatible with PHP 8.1 ?
My JOOMLA Versione is: 3.10.11
THX
What is the error?
Joomla 3.10.11 is not compatible with PHP 8.1, unless the level of error reporting in the Server tab of the Global Configuration is set to 'Simple' or 'None'. The recommended version of PHP for Joomla 3.10.11 is PHP 8.0, as you can see from the Technical Requirements for Joomla 3.x (https://downloads.joomla.org/technical-requirements).
I have Error Level set to NONE but PHP 8.0 do nork at all (Nor frontend nor backend)
BUT PHP 8.1 works quite well in the frontend ... but have issues in the backend (virtuemart backend - Product edit)
Far more likely your template isn't compatible .. try with Beez etc
I put the build (clean stable versions) of Joomla 4.2.7 + Virtuemart 4.0.12 on the XAMPP server with php 7.4 - editing the product card and category card works fine. If I put the same assembly on XAMPP with php 8.0 or php8.1, then there is no way to edit the product card or category card. What could be, where to look?
provide a FULL report of what is happening, what the error is etc etc
I have multiple installs on Joomla 4.2.7 + Virtuemart 4.0.12 + php8 working fine ( apart from the https://forum.virtuemart.net/index.php?topic=149553.msg534030#msg534030 problem fixed in 4.0.13)
I tried to attach a screenshot, but the system does not skip such an answer
I'm trying to attach a screenshot
apart from the fact it looks like you have css not loading (check the console - have u fully cleared all caches ? ) you also have these 3 things to correct.
The only error I assume is because u can't create thumbnails .. ( no GD library? )
the problem was solved by uncomenting the extension=gd string in php.ini
Ok. I've read through the thread and don't find a resolve.
I "had" VM 4 installed with J4.2.8 yesterday and then had to reinstall everything. I "dropped" everything in the database and started over (it's a dummy site and nothing other than VM, Istraxx Quantity Discount, and JCE have been installed - using Cassiopeia). I also have Php 8.0 enabled.
Upon reinstall with VM 4.0.12 10777 and J 4.2.8 I created a product yesterday. It worked. Not today.
Today, I created a second product (a lot of testing required for this project). I also created "Custom Fields" - 2. One if for "Group" and a second for "Year".
Everything was working fine until I clicked on "Product Details" (either product has the same results), and got an error from Joomla:
The requested page can't be found.
An error has occurred while processing your request.
You may not be able to visit this page because of:
an out-of-date bookmark/favourite
a mistyped address
a search engine that has an out-of-date listing for this site
you have no access to this page
Go to the Home Page
If difficulties persist, please contact the website administrator and report the error below.
0 Unsupported operand types: float * string
I've unpublished the Custom Fields and tried again. Same results.
I deleted the Custom Fields from both products and tried again. Same results.
Then I unpublished the plugin I installed after reinstalling everything else.
It turned out that the Quantity Discount plugin for which my client paid is causing the problem.
Because this is something for another thread I'll move over there now that I know what's causing the issue. But the Istraxx 1.10.0 is at fault and also has an error when debugging - Deprecated: Required parameter $plus follows optional parameter $currency in /home/schoolfo/store.schoolfortheblonde.com/plugins/vmcalculation/istraxx_quantity/istraxx_quantity.php on line 546
My problem throws the error that is discussed in this thread. I thought it would help others, but I began posting here before I ran down the culprit.
By the way. The "gross price" in the latest VM? I don't understand the value of having that "mandated" in every site that uses VM 4. Why isn't that an option? I'll hide that via CSS, but still....
Things like that "may" be helpful, IF one could arrange the order in which things like that appear. But where it appears is wrong. Too many "? - price" and it's becoming confusing for customers.
You don't need plugin, we have quantity range table in product detail too - is only 10 lines code in php, you can write self without error :)
I don't understand, every want plugin plugin plugin, but don't want do it self...
I don't developper, but this table created self, every info you have in object product price :)
If I had somewhere that I could get "updated" information with proper coding instructions, I would prefer to not use the plugin!
I've only been able to find "outdated" instructions.
I've been unable to find code / instructions on how to create the quantity steps. I searched for days before finally purchasing the plugin.
Are you saying that plugin is not going to work?
I have no problem uninstalling the plugin. But I would need to "updated" instructions for VM 4 and J 4 in order to not use the plugin.
Unfortunately, I don't have a manual for J4 and VM4.
So far we have all eshops on J3 and we will have two more years for sure.