HELP!

Permalink
Hi, I've got a big problem, hope someone can help.

A few months ago I built a website with concrete5, but had not looked at it for several months. Today I returned to it to notice that the audio player blocks were not displaying. They appeared in Firefox, but not Chrome or IE. Wasn't sure what to do, but noticed there was a concrete5 update available so updated that. Now I go to my website there is a long "Fatal error" message (which I've pasted below). My whole website has disappeared!

I'm completely ignorant of any website coding or anything, I'd managed to build something quite decent just by using blocks and so on, but now fear I've done something completely stupid and lost the whole thing! Please help! The website is http://www.jazzperfection.com. At this moment if you search for it in Google you can see the Cached version to see how it was. But if you click on the direct link then you get the long error message. Please, if anyone can help then do because I'm panicking!

This is the error message, which you can also see if you just go to the website:

Fatal error: Uncaught exception 'ADODB_Exception' with message 'mysql error: [1054: Unknown column 'Pages.cPointerExternalLinkNewWindow' in 'field list'] in EXECUTE("select Pages.cID, Pages.pkgID, Pages.cPointerID, Pages.cPointerExternalLink, Pages.cPointerExternalLinkNewWindow, Pages.cFilename, Collections.cDateAdded, Pages.cDisplayOrder, Collections.cDateModified, cInheritPermissionsFromCID, cInheritPermissionsFrom, cOverrideTemplatePermissions, cPendingAction, cPendingActionUID, cPendingActionTargetCID, cPendingActionDatetime, cCheckedOutUID, cIsTemplate, uID, cPath, Pages.ctID, ctHandle, ctIcon, ptID, cParentID, cChildren, ctName, cCacheFullPageContent, cCacheFullPageContentOverrideLifetime, cCacheFullPageContentLifetimeCustom from Pages inner join Collections on Pages.cID = Collections.cID left join PageTypes on (PageTypes.ctID = Pages.ctID) left join PagePaths on (Pages.cID = PagePaths.cID and PagePaths.ppIsCanonical = 1) where Pages.cID = 1") ' in /home4/jazzperf/public_html/updates/concrete5.4.1.1/concrete/librari in /home4/jazzperf/public_html/updates/concrete5.4.1.1/concrete/libraries/3rdparty/adodb/adodb-exceptions.inc.php on line 78

 
moosh replied on at Permalink Reply
moosh
I think you have a problem with your database.

Could you check if your C5 databse have tables ?
warden91 replied on at Permalink Reply
How would I do that? (please excuse my ignorance, I'm a complete layman, and don't know what database or tables are!)
ijessup replied on at Permalink Best Answer Reply
ijessup
Fixed it for you.

You updated the files, but not the database. If that ever happens again after you "update", just go to this address...

~/index.php/tools/required/upgrade
ijessup replied on at Permalink Reply
ijessup
Save that URL somewhere, because when you reply back I'm going to remove it.
warden91 replied on at Permalink Reply
Wow. Thanks! Perhaps you could explain in a bit more detail (but simple terms!) exactly what I did wrong and how you corrected it, so that I'll know for another time. I'm also slightly baffled that the corrections could be done by anyone and didn't have to be made by me specifically by logging in or something.
ijessup replied on at Permalink Reply
ijessup
It's a not so uncommon issue, where the upgrade script runs, but doesn't finish because the web host has PHP execution time set to a certain limit.

The upgrade script is available publicly because if you can't connect to the database as intended, you can't login. So it's a "Oh crap!" button. The script can't be modified external to the server, nor (to my knowledge) be injected with any malicious SQL code, or any code for that matter.

In short, YOU did nothing wrong. The cause was likely the server's configuration.

The fix is to re-run the upgrade script so it can finish where it left off.
warden91 replied on at Permalink Reply
"Oh crap!" accurately represents what I was feeling! Nice to know that I hadn't done anything wrong. Thank you for the explanation.

There is still a problem remaining on one page, perhaps you could help here also? On the "Listen" page, I get this error:

Fatal error: Page::supportsPageCache() [<a href='page.supportspagecache'>page.supportspagecache</a>]: The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition &quot;WPAudioPlayerBlockController&quot; of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide a __autoload() function to load the class definition in /home4/jazzperf/public_html/updates/concrete5.4.1.1/concrete/models/page.php on line 2099

It was the fact that the audio files on this page were not displaying (having previously worked fine) that led me to attempt the update in the first place.
ijessup replied on at Permalink Reply
ijessup
I see. That actually shows up in FireFox as well. Though I'm not 100% sure the actual cause of this, what is obvious to me is that Page Caching is causing a problem somewhere.

What I would do is:
go to the Sitemap (in the Dashboard),
click on the Listen page
and go to Properties.

Then go to the "Speed Settings"
and select the "Do not cache this page." option,
then click save.

Then, just for good measure...
go to Sitewide Settings (in the Dashboard),
look for the "Speed Settings" block,
click the "Clear Cache" button.

Go back to the Listen page. Then in a different browser, load up the Listen page again and see if the problem persists.
warden91 replied on at Permalink Reply
Followed those instructions, unfortunately the problem still persists, although the error message is now slightly different:

Fatal error: View::render() [<a href='view.render'>view.render</a>]: The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition &quot;WPAudioPlayerBlockController&quot; of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide a __autoload() function to load the class definition in /home4/jazzperf/public_html/updates/concrete5.4.1.1/concrete/libraries/view.php on line 734
ijessup replied on at Permalink Reply
ijessup
Well, WPAudioPlayerBlockController is definitely an issue, then.

Is there an update available? To to the "Add Functionality" page in the Dashboard and see if there are available updates.

If that doesn't work... Try deleting, then recreating the page.
If that doesn't work... Either contact the add-on's creator or find a different audio player.
warden91 replied on at Permalink Reply
No updates available :(

How do you do delete and recreate a page?

Thank you for all this advice!
ijessup replied on at Permalink Reply
ijessup
Because the page is broken:
Go to the Sitemap,
click on the page you want to delete,
click "Delete".

And you would just recreate the page the same way you originally created it. Unfortunately you have to replace all the block, but I don't see any other way around this.
warden91 replied on at Permalink Reply
Ah, ok. I thought there might have been some magical "recreate" button that I didn't know about.

How frustrating... Think I will probably just find another player, will hopefully be less hassle in the long run.

Thank you for all your help.