I just realized that my Omeka site ( http://caseyfeldmanmemories.org/ ) is having serious problems. I suspect it is tied to a recent PHP upgrade that my host provider just pushed through a few weeks ago.
The error I am seeing is 'Error:Mysqli statement execute error : No data supplied for parameters in prepared statement' along with not much content being returned. The static pages are fine - but the pages that query lists of things have no content. Thoughts? Help?
And yes - this is a very old version of Omeka I should have upgraded ages ago. I had just been moving forward with the "it isn't broken, I don't want to break it" approach.
Thanks for any suggestions!
Could you follow this guide to turning on error messages, and post up the long results that should appear? That'll help narrow things down.
Error:Mysqli statement execute error : No data supplied for parameters in prepared statement#0 /home2/csection/public_html/caseyfeldman/application/libraries/Zend/Db/Statement.php(283): Zend_Db_Statement_Mysqli->_execute(Array)
#1 /home2/csection/public_html/caseyfeldman/application/libraries/Zend/Db/Adapter/Abstract.php(433): Zend_Db_Statement->execute(Array)
#2 /home2/csection/public_html/caseyfeldman/application/libraries/Zend/Db/Adapter/Abstract.php(737): Zend_Db_Adapter_Abstract->query('? SELECT...', Array)
#3 [internal function]: Zend_Db_Adapter_Abstract->fetchOne('? SELECT...', Array)
#4 /home2/csection/public_html/caseyfeldman/application/libraries/Omeka/Db.php(70): call_user_func_array(Array, Array)
#5 /home2/csection/public_html/caseyfeldman/application/models/Item.php(373): Omeka_Db->__call('fetchOne', Array)
#6 /home2/csection/public_html/caseyfeldman/application/models/Item.php(373): Omeka_Db->fetchOne('? SELECT...', Array)
#7 /home2/csection/public_html/caseyfeldman/application/helpers/ItemFunctions.php(370): Item->hasThumbnail()
#8 /home2/csection/public_html/caseyfeldman/themes/thanksroy/index.php(16): item_has_thumbnail()
#9 /home2/csection/public_html/caseyfeldman/application/libraries/Omeka/View.php(89): include('/home2/csection...')
#10 /home2/csection/public_html/caseyfeldman/application/libraries/Zend/View/Abstract.php(820): Omeka_View->_run('/home2/csection...')
#11 /home2/csection/public_html/caseyfeldman/application/libraries/Zend/Controller/Action/Helper/ViewRenderer.php(902): Zend_View_Abstract->render('index.php')
#12 /home2/csection/public_html/caseyfeldman/application/controllers/IndexController.php(27): Zend_Controller_Action_Helper_ViewRenderer->renderScript('index.php')
#13 /home2/csection/public_html/caseyfeldman/application/libraries/Zend/Controller/Action.php(503): IndexController->indexAction()
#14 /home2/csection/public_html/caseyfeldman/application/libraries/Zend/Controller/Dispatcher/Standard.php(285): Zend_Controller_Action->dispatch('indexAction')
#15 /home2/csection/public_html/caseyfeldman/application/libraries/Zend/Controller/Front.php(934): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#16 /home2/csection/public_html/caseyfeldman/index.php(24): Zend_Controller_Front->dispatch()
I wonder if it has something to do with the fact that passing by reference was depreciated in php 5.3 and removed in 5.4.
Possibly. What version of Omeka are you using?
How do I figure that out? I set it up in the fall of 2009.
On the admin screen, it's displayed way at the bottom right side of the pages.
Ah, yes, this is very likely to be the problem.
Omeka relies on Zend Framework for lots of things, including database-related stuff. The version of Zend Framework that we had in Omeka 1.0 doesn't support newer versions of PHP (maybe even all the way back to only supporting up to 5.2).
Omeka 1.2.1 is the next logical step. It should be recent enough to actually work on newer PHP versions, and you can upgrade directly to it from 1.0.
Any 'gotchas' I should know about before I attempt this? I worry about things I don't remember customizing (it has been a long time since I built this site). Thanks so much!
Even though your current install isn't working, be sure to back it up (back up the database, and copy the omeka folder itself over somewhere else).
The upgrading instructions say as much, but you'll be much happier if anything goes wrong or there's some change you can't remember if you have an exact copy of the site as it used to be sitting somewhere.
Okay.. finally tackling this. Backed everything up. Got to step 2: Disable all plugins.
When I try to do that, I get this error: "An error has occurred in Omeka. To track the contents of this error, please enable error logging."
When I turn on logging I see this error:
"2013-12-08T22:04:43-07:00 ERR (3): Mysqli statement execute error : No data supplied for parameters in prepared statement"
Sound familiar? Is there some command-line way to disable my plugins? How bad is it to upgrade without disabling the plugins?
It is indeed familiar, and could be caused by a number of things. There should be a long trace after that message that will help us track it down. Could you post that, too?
That one line I posted as the error is the only thing int he log file. IS there somewhere else that I could look for the trace you are hoping for?
If I were you I'd just skip over the "disable all plugins" step. You're having trouble here for the same reason you're having the problem in the first place, your running version of Omeka is too old for this server.
The Upgrading instructions will have you move the old installation out of the way and then install the upgraded version "clean," copying the installation-specific stuff back over. Just don't copy any plugins over to the new installation in Step 5, and you'll only have the updated versions of the bundled plugins in there. Any other plugins will be effectively disabled until you move them (or an updated version) back into place.
That is what I was leaning towards, but having some confirmation that it is a reasonable approach is reassuring. Thanks.
Victory! I have upgraded to 1.2.1 . Everything works again.
Now I just need to decide if I upgrade again right now to 2.1.3.
Glad to hear it!
If you're planning on doing more work on the site, I personally think 2.1.3 is much nicer, but be aware that plugin and theme support isn't the same between 1.x and 2.x. 2 generally still has a smaller selection, but it may not matter depending on your specific plugins.
Especially if you're just interested in keeping the site running without really making changes, 1.2.1 could well be good enough. At any rate, I'd definitely make a new backup of things now that you're back at a stable place.