Read bugs and forum, still won't work. ...

  • Seeker

    Seeker - 2011-09-09

    I'm trying to install OpenBiblio 0.6.1 on a Windows 7 machine using XAMPP 1.74 (Apache 2.2.17, MySQL 5.5.8, PHP 5.3.5, phpMyAdmin 3.3.9).  I got more errors than I ever imagined.  I read through the known bugs and help forum and made the following changes:

    Changed TYPE to ENGINE:
    Changed error_reporting in PHP.ini:
    Changed common.PHP to ini_set:

    I am still getting errors that prevent me from using OpenBiblio, and I'm at my wit's end.  I would really like to use this package to organize the library at my hackerspace, given that it's simple, effective, and doesn't require a client-server architecture.  However, after spending way too many hours of trying to get this to work, I'm at a loss.

    When trying to run the installation, I get an error on top that reads:

    Function ereg() is deprecated in C:\xampp\htdocs\openbiblio\install\install.php on line 20

    and an error below page that reads:

    Fatal error: Call to a member function close() on a non-object in C:\xampp\htdocs\openbiblio\install\install.php on line 62

    It still allows me to create the table set, but with the same "function ereg() is deprecated at the top", followed by 50 lines of

    Deprecated: Function ereg() is deprecated in C:\xampp\htdocs\openbiblio\classes\InstallQuery.php on line 95

    and then

    OpenBiblio tables have been created successfully!

    Then, when I try to use the newly-installed system, I get this at the top:

    Deprecated: Function ereg() is deprecated in C:\xampp\htdocs\openbiblio\classes\Query.php on line 247
    Deprecated: Function ereg() is deprecated in C:\xampp\htdocs\openbiblio\shared\header.php on line 6

    It still seems to function, but with errors still reporting at the top.  For example, clicking on "Circulation" yields

    Deprecated: Function ereg() is deprecated in C:\xampp\htdocs\openbiblio\classes\Query.php on line 247
    Deprecated: Function ereg() is deprecated in C:\xampp\htdocs\openbiblio\shared\header.php on line 6
    Deprecated: Function ereg() is deprecated in C:\xampp\htdocs\openbiblio\shared\header_top.php on line 53
    Deprecated: Function ereg() is deprecated in C:\xampp\htdocs\openbiblio\shared\header_top.php on line 54
    onLoad="self.focus();document.loginform.username.focus()" >

    followed by the page.  Similar errors occur when trying to use anything else.  I've already spent way too much time trying to get this to work and can't afford to spend too much more.  Can somebody please help me to get this running and tell me why I still get these errors despite changing the PHP.ini file and others?  I apologize if my demeanor isn't the best but I'm beyond frustrated at this point.  I would appreciate any help you can give.

  • Fred LaPlante

    Fred LaPlante - 2011-09-09

    Sorry to have to tell you this, but what you have is a known problem with 6.1 and current releases of PHP.  As stated in the error messsages, the ereg functions are no longer supported, though they were at the time of ver 0.61 release.  I suspect that if you search for 'ereg deprecated' here you will find several discussion threads with solutions.

    If you are feeling adventuresome, there is a ver 0.7 around (not sure just where) that while still in Beta, is usable and has this problem fixed.  I know of one user in Sweden using it quite happily since the beginning of the year.

    For even more adventure contact me via my email to discuss ver 1.0 which is also in daily use (by me and one other in Ireland).

    Fred LaPlante

  • Seeker

    Seeker - 2011-09-11

    Fred, thanks so much for all your help.  I tried using v.0.7.0 and managed to get it working (finally!!).  I still had to do the TYPE to ENGINE substitution and edit common.php to get rid of the set_magic_quotes_runtime() problem, but at least I didn't get the dreaded ereg deprecation problem that had been driving me nuts.  I was surprised, though, that I had to make those changes in 0.7.0 given that they're also known issues.  I'm assuming you're involved with the project since you have 1.0, so may I suggested that you all make a permanent post detailing that these three are known errors and that users should use 0.7.0 instead and make the two necessary changes.  It would have saved me 7+ hours of frustration and time, and I'm sure it would do the same for others wanting to use this.  In fact, I was ready to completely abandon OpenBiblio and go with NewGenLib. 

    Thankfully, though, I can now play around with OpenBiblio, as I see it as being better suited for our needs than NewGenLib, the other ILS I installed, which is massively complex and geared toward libraries with 100,000s of items and multiple branches.  I'm trying to set up a simple ILS for our hackerspace and wanted something light-weight and simple so that people can finally take books out of the place.

    Many thanks for your help and for responding so quickly!

  • Fred LaPlante

    Fred LaPlante - 2011-09-11

    Well thank you for replying. Its always good to hear from happy users.

    As to the ereg() problem, I agree with you completely. In fact I suggested this some time ago, but the reaction of the authors at that time was that no one but me was using the latest release of PHP so there was no need to bother with an upgrade at that time.  Since then the feeling seems to have changed and so 0.7 has the changes included.  But due to lower interest, 0.7 remains in a beta stage and so has not been released to the general public.

    Incidently, 1.0 has multi-site ability along with a more modern user interface and many other features without being much larger or complex than 0.7. I understand you may not need that feature, but keep it in mind if things change.  For what it is worth, I am only involved with the 1.0 version, though I do monitor this forum and help where I can

    If you are planning on entering very many books to you OpenBiblio, you may want to consider the Lookup plug-in which eases fetching book data from US LoC.

    Fred LaPlante

  • Hans van der Weij

    0.7.0 still has many issues. I think it should be skipped in the release schedule.

    Now that "Seeker" is already using 0.7.0: you'd better try
    This is just finished and has all open issues fixed. You don't have to run the installer when already using 0.7.0

    Best regards,

    Hans van der Weij


    SAN LEE - 2011-09-24

    I agreed with you 'the seeker', I have spend almost a day to look around for the solutions.
    After change the TYPE to ENGINE, I am still having the problem of Function ereg()
    Till now I am still not able to solve this annoying Function ereg() is deprecated.
    And I have no idea where can I get 0.7 version.
    Would appreciate if you could help on this. Thank you.


    SAN LEE - 2011-09-24

    infinite-mnkz, I am trying on the version that you upload. However, may I know how to change the time-zone? a
    as I found this on the beginning of installation
    ecommended: correct before proceeding, else Check Out and Check In might fail temporarily.
    Current date and time (YYYY-MM-DD HH:MM:SS):

          MySQL : 2011-09-25 03:36:13
          PHP   : 2011-09-24 21:36:13   

    php.ini: date.timezone = Europe/Berlin

  • Hans van der Weij

    Most likely, date and time after MySQL corresponds to that of the system you are using for installing OpenBiblio. Then you can adjust the timezone in the PHP configuration file php.ini.
    The last line you copied in your message says that timezone defined in php.ini is Europe/Berlin (probably you're using XAMPP, made in Germany). In the lines below (under Suggestion), you can follow the link to php info. There you can find the Configuration File (php.ini) Path, use this to find php.ini on your system. There should be a line where date.timezone is defined. Probably just above you'll see a web address that has more information about what value you should use.

    Good luck,


  • Hans van der Weij

    Sorry, the value in "Configuration File (php.ini) Path" is not always usable for finding PHP.INI, instead use "Loaded Configuration File".

    Updated install:

  • Hans van der Weij

    Oh, great. EasyPHP users can't adjust PHP.INI to change date.timezone. EasyPHP overrides PHP.INI when the user sets the timezone by using EasyPHP Administration.

    Updated install:

  • Fred LaPlante

    Fred LaPlante - 2011-10-10

    Perhaps adding the following to …/shared/common.php would do the trick.
    date_default_timezone_set ( string $timezone_identifier )
    There is a reference to a list of identifiers available on that page.

    I think I will look into adding this function to ver 1.0 along with a place in the 'tools' menu to allow the installer to select the correct one.

    Fred LaPlante

  • Hans van der Weij

    Thanks for the suggestion, Fred.

    Right now that won't work for 0.7:
    For 0.7.0 scripts for Check In and Check Out were rewritten to use timestamp date calculations, the current date is determined by PHP. With some additional changes this works fine. Override Due Date is great new feature and more new features can be developed using timestamps. But Install, Circulation changing status from 'crt' to 'in' and Cataloging still use MySQL now() or sysdate(). I didn't feel tempted to change all these other scripts, I thought: "That can be done later, when 0.7 proves to be succesfull. For now I only want to make a really simple change in the installer".



Cancel  Add attachments