[SOLVED] File Upload Element throws "http error" on PHP 7.3+

pastvne

Bruce Decker
Hi All:
I think this is a problem with my hosting company's configuration of PHP 7.3 and PHP 7.4 and not an issue with the uploader element. I intend to turn up debug and scrutinize phpinfo() output to compare my site running on PHP 7.2 (where the upload element works) and PHP 7.4 where it fails with a HTTP error. Before I do, I wondered if anyone had any suspicions about specific PHP modules I should be looking for in the configuration...
 
Which fileupload, standard or ajax?
Both are doing with php7.3 on my site.

Do you get some more infomation with Joomla debug on and/or in log files?
 
Thank you Troester for the confirmation on PHP 7.3. I'll cross check the upload mode and turn on debug and proceed from there. I suspect this is an issue with how my web hosting company has configured PHP 7.3 and 7.4 under Multi-PHP Manager.
 
Hi Troester:
I went back to the site and turned up error reporting to 'development' and observed. There are no error messages thrown to screen other than an ajax box that simply says "HTTP ERROR". I turned up debugging and provoked an error just to confirm it was working. Then, I attempted to upload a file with the file upload element in PHP 7.4. The upload allows me to add, then select a file from local storage. But when I select the file, it then pops the dialog box which simply says "HTTP Error" with no additional information and no log generation. I was unable to test on 7.3 (yet) because I'm working with my hosting company because so many PHP packages are missing, that joomla won't even load.

I thought I had worked through it with them to get 7.4 and Joomla working but ran into this uploader issue. I'm going to go back to them and ask them to compare their PHP 7.2 (Which works) agains 7.4 which fails. While they are at it, I'll ask them to configure 7.3 as well.

I turned on debugging and started loading pages and there are a lot of deprecated messages coming from Fabrik scripts. looks like function such as in_array() have been deprecated:

Code:
Deprecated: array_key_exists(): Using array_key_exists() on objects is deprecated. Use isset() or property_exists() instead in /home/bluepi20/public_html/sites/superior.cloudstreetportal.com/components/com_fabrik/models/list.php on line 4534

Deprecated: array_key_exists(): Using array_key_exists() on objects is deprecated. Use isset() or property_exists() instead in /home/bluepi20/public_html/sites/superior.cloudstreetportal.com/components/com_fabrik/models/list.php on line 4590

Deprecated: array_key_exists(): Using array_key_exists() on objects is deprecated. Use isset() or property_exists() instead in /home/bluepi20/public_html/sites/superior.cloudstreetportal.com/components/com_fabrik/models/element.php on line 997

The fabrik app itself seems to continue on so I suspect these are warnings but will need to be addressed at some point.

I'm not sure what dependencies upload element has. But I suspect that if yours is working on PHP7.3 and mine is failing, that the answer is probably in the configuration of PHP.

I'll continue forging through the PHP differences in hope I can find the answer with my hosting company. Thanks for your help.

-BD
 
Working through this, I think the information I am seeking is which PHP packages are required for Joomla and Fabrik. If I had this, I could check my PHP configuration against the list. Does anyone know of such a prerequisite list?
 
Posting the cause and solution. My hoster provides new releases of PHP. In versions prior to 7.3, there were a number of 'default' packages that came with the base PHP install. Starting at 7.3, those who asssemble the 'base' packaging of PHP decided certain packages that were 'standard' in the past, would not be optional and not installed by default. One such package was 'gd', a graphics library. While it is unclear to me why the file upload element throw an 'http error' when attempting to upload, after installing the gd PHP module into PHP 7.3, the file upload element now works. It would be very handy to have a convenient list for both PHP and Fabrik (and perhaps its plug-ins) of prerequisite PHP levels and PHP packages. I'll mark this thread as 'solved'
 

Members online

No members online now.
Back
Top