VirtueMart Forum

VirtueMart 2 + 3 + 4 => Administration & Configuration => Topic started by: xur82 on July 20, 2022, 15:35:23 PM

Title: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: xur82 on July 20, 2022, 15:35:23 PM
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
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: pinochico on July 20, 2022, 18:31:41 PM
wait for version for PHP8 :)
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: xur82 on July 20, 2022, 19:52:54 PM
I have a choice on my hosting account 8.0 (which is what I am trying) and 8.1
cheers
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: xur82 on July 20, 2022, 19:58:35 PM
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
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: pinochico on July 20, 2022, 23:06:41 PM
Our hosting is from PHP52 to PHP8.1

cheers too  8)
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: Jac62 on August 04, 2022, 14:08:04 PM
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
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: Jac62 on August 04, 2022, 14:13:49 PM
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
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: GJC Web Design on August 04, 2022, 14:18:38 PM
supply the bug trace with debugging so we know where it is happening...
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: Jac62 on August 05, 2022, 10:53:09 AM
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
    }
}
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: Studio 42 on August 18, 2022, 15:51:25 PM
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
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: e-trader on December 04, 2022, 15:00:19 PM
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
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: Milbo on December 05, 2022, 19:27:33 PM
imho fixed in vm4.0.8, but tomorrow comes 4.0.10
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: subn3t on January 26, 2023, 18:59:55 PM
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
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: jenkinhill on January 27, 2023, 10:56:55 AM
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".
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: subn3t on January 28, 2023, 11:54:44 AM
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.
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: GJC Web Design on January 28, 2023, 14:54:24 PM
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
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: subn3t on January 28, 2023, 20:39:48 PM
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
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: pico71 on February 06, 2023, 12:11:43 PM
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
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: jenkinhill on February 06, 2023, 13:15:41 PM
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).
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: pico71 on February 06, 2023, 19:16:48 PM
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)
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: GJC Web Design on February 06, 2023, 22:10:22 PM
Far more likely your template isn't compatible .. try with Beez etc
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: goooogy2000 on February 07, 2023, 09:38:03 AM
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?
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: GJC Web Design on February 07, 2023, 09:55:18 AM
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)
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: goooogy2000 on February 07, 2023, 10:14:27 AM
I tried to attach a screenshot, but the system does not skip such an answer
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: goooogy2000 on February 07, 2023, 10:19:23 AM
I'm trying to attach a screenshot
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: GJC Web Design on February 07, 2023, 10:24:40 AM
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? )

Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: goooogy2000 on February 07, 2023, 10:33:34 AM
the problem was solved by uncomenting the extension=gd string in php.ini
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: T.A. Garrison, LLC on February 21, 2023, 21:50:44 PM
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.
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: pinochico on February 21, 2023, 23:31:54 PM
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 :)
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: T.A. Garrison, LLC on February 21, 2023, 23:40:30 PM
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.
Title: Re: Product edit in admin - PHP v8.0 "Unsupported operand types: string + int"
Post by: pinochico on February 22, 2023, 03:06:53 AM
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.