xoops forums

Moonrakre

Just popping in
Posted on: 1/12 11:15
Moonrakre
Moonrakre (Show more)
Just popping in
Posts: 30
Since: 2005/12/6
#1

protector.php not found

Hi,

I am trying to upgrade from 2.3 to 2.5.9 but on running /upgrade I get the message:
Fatal Error Class 'Xmf\IPAddress' not found file: /home/hbo10k4/public_html/10k_lib/modules/protector/class/protector.php : 504

The file is there with permissions 755 and the permissions on every bit of the path are 755 also.

Does anyone know what I can do about this, please?

Best wishes

Adrian.

Moonrakre

Just popping in
Posted on: 1/12 14:50
Moonrakre
Moonrakre (Show more)
Just popping in
Posts: 30
Since: 2005/12/6
#2

Re: protector.php not found

Oops I got the heading wrong it appears to be a class "Xmf\IPAddress" which hasn't been found. Where should this be?

Is it that the upgrade process overwrote the _lib files but protector refers to classes outside of that?

iHackCode

Module Developer
Posted on: 1/12 22:13
iHackCode
iHackCode (Show more)
Module Developer
Posts: 1031
Since: 2004/6/29
#3

Re: protector.php not found

It should be in htdocs/class/libraries/vendor/xoops/xmf/src/Xmf/IPAddress.php, XOOPS should automatically load that file though.

Have you tried the file integrity check?
Quote:

Files integrity check
-----------------------------------

The full XOOPS package is released with a script able to check if all the system files have been correctly uploaded to the server. To use it, follow these instructions:

1. Upload the checksum.php and checksum.md5 files located in the XOOPS package root to your XOOPS server folder (putting them next to mainfile.php).
2. Execute checksum.php with your browser
3. If necessary, re-upload the missing or corrupted system files
4. Remove checksum.php and checksum.md5 from your server

Moonrakre

Just popping in
Posted on: 1/13 8:38
Moonrakre
Moonrakre (Show more)
Just popping in
Posts: 30
Since: 2005/12/6
#4

Re: protector.php not found

Thank you iHackCode,

I did that and got:
There are 3938 files checked.
Please remove the file ./checksum.md5 and checksum.php as soon as possible.

which I assume means all OK.

IPAddress.php is in the right place on the server.

What I didn't make clear in my earlier post is that the error is happening when I run upgrade. So I guess the upgrade routine isn't loading it properly.

Moonrakre

Just popping in
Posted on: 1/13 10:36
Moonrakre
Moonrakre (Show more)
Just popping in
Posts: 30
Since: 2005/12/6
#5

Re: protector.php not found

Digging about I found a in precheckfunctions.php which says:
die('To use installer, remove protector\'s lines from mainfile.php first

SO I commented out two lines in mainfile.php which refer to protector and the upgrades went through OK apart from it couldn't access secure.dist.php - because the upgrade instructions didn't says to copy xoops_data folder to the installed _data folder (similar to _lib).

The problem I now have is that if I uncomment the two lines in mainfile.php the system blank screens. SO I am now having to run without protector - not good. Can anyone advise me on how to get Protector working again please?

iHackCode

Module Developer
Posted on: 1/13 12:53
iHackCode
iHackCode (Show more)
Module Developer
Posts: 1031
Since: 2004/6/29
#6

Re: protector.php not found

It is no longer required to modify the mainfile.php to include the precheck.inc.php and the postcheck.inc.php files. The module has a core preload that is set to include the files, so XOOPS will include that in the xoopsPreload .

XOOPS 2.5.9
Protector 3.54

Moonrakre

Just popping in
Posted on: 1/13 14:55
Moonrakre
Moonrakre (Show more)
Just popping in
Posts: 30
Since: 2005/12/6
#7

Re: protector.php not found

Thanks again iHackCode,

I see several changes in the new mainfile.dist.php so I've tried to put those in. The only problem was adding:

// Secure file
require XOOPS_VAR_PATH . '/data/secure.php';

As soon as I added that I just get:
Restricted Access
when I run the site.

But I realised that secure.php just defines the database so I had to take that lot out of mainfile.php. Then I was back in.

I have posted this in case someone else is following the same path as me.

I am left now with problems editing but I think that is separate issue so I'll raise another topic if I can't find a solution. But in short I am getting errors like:
Error : Error: Call to undefined method FormDhtmlExt::XoopsFormDhtmlTextArea()

Other than that I think I'm sorted

Mamba

Moderator
Posted on: 1/13 15:40
Mamba
Mamba (Show more)
Moderator
Posts: 10558
Since: 2004/4/23
#8

Re: protector.php not found

Suggestion:

install XOOPS 2.5.9 separately, so you can see the content of mainfile.php and secure.php.

This way you can copy the content to your original files, and only update your host and DB information.

Did you read the upgrade instruction ?
https://www.gitbook.com/book/xoops/xoo ... 9-install-upgrade/details
Support XOOPS => DONATE
Use 2.5.9 | Docs | Modules | Bugs

iHackCode

Module Developer
Posted on: 1/13 16:13
iHackCode
iHackCode (Show more)
Module Developer
Posts: 1031
Since: 2004/6/29
#9

Re: protector.php not found

The updater is supposed to edit the mainfile.php and secure.php files for you, but it looks like you were able to update the mainfile.php and secure.php files manually.

I think the FormDhtmlExt editor was part of the xoopseditors package from years ago. I think your site might have the files on your site still (I don't know if there in an updated version available). Go to the system module->preferences->system module settings. In the 'Editor Settings' , change all of the editors to 'dhtmltextarea'. Now your site will use an editor that works.

The preference page should be here:
Quote:

htdocs/modules/system/admin.php?fct=preferences&op=showmod&mod=1

Moonrakre

Just popping in
Posted on: 1/13 17:28
Moonrakre
Moonrakre (Show more)
Just popping in
Posts: 30
Since: 2005/12/6
#10

Re: protector.php not found

Unfortunately all the editors were already set to dhtmltextarea. I tried all the other options to no avail.

The module throwing the error is a "content" module (of which there seem to be a number) by a Ben Brown of The Handcoders, Reinarz & Associates. These seem to have disappeared now.

I built the site for a charity in 2010 and it has just run lovely since then, but it was on an old PHP version which has had to be changed, so somehow I need to get it changed at least to the point of being able to edit the content. So yes is it old.