OpenBiblio

From LemonWiki共筆
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

OpenBiblio是開放原始碼的圖書管理系統。

OpenBiblio v.0.6.0


install instruction

  • Check the requirement: PHP 4.2+ & MySQL 4.0.12+
  • Setup the MySQL: {openbiblio}/database_constants.php
more on OpenBiblio Install Instructions
  • run the http://localhost/openbiblio/install/index.php

localization

  • copy the {openbiblio}/locale/en to {openbiblio}/locale/en_utf
  • modify the {openbiblio}/locale/en_utf8/metadata.php
     "locale_description" => "English_utf8" 
1167678345_7fef04238c.jpg
image host on flickr


Setup the library
  • Click the admin label
  • login the default admin account
  • click the library settings
    • Locale: switch to English_utf8
    • HTML Charset: modify iso-8859-1 to utf-8
  • click the Update button


When create DB (for MySQL5)

SQL:

 create database openbiblio CHARACTER SET utf8 COLLATE utf8_general_ci;


Modify PHP source

openbiblio\Query.php

add line: $rc = Query::act( 'SET NAMES UTF8' ); so that all connection will be UTF8


 function connect_e() {
   list($this->_link, $e) = Query::_connect_e();   
   $rc = Query::act( 'SET NAMES UTF8' );
   return $e;
 }
Modify PHP source (version 0.6.1)

openbiblio\classes\Query.php

add the two lines: mysql_query("SET CHARACTER SET utf8"); and mysql_query("SET NAMES utf8"); so that all connection will be UTF8


 function _connect_e() {
   static $link;
   if (!isset($link)) {
     if (!function_exists('mysql_connect')) {
       return array(NULL, new DbError("Checking for MySQL Extension...",
                          "Unable to connect to database.",
                          "The MySQL extension is not available"));
     }
     $link = mysql_connect(OBIB_HOST,OBIB_USERNAME,OBIB_PWD);
     mysql_query("SET CHARACTER SET utf8");
     mysql_query("SET NAMES utf8");
     if (!$link) {
       return array(NULL, new DbError("Connecting to database server...",
                                      "Cannot connect to database server.",
                                      mysql_error()));
     }
     $rc = mysql_select_db(OBIB_DATABASE, $link);
     if (!$rc) {
       return array(NULL, new DbError("Selecting database...",
                                      "Cannot select database.",
                                      mysql_error($link)));
     }
   }
   return array($link, NULL);
 }


Validation
  • click the Cataloging label -> New Bibliography
  • add a new Bibliography in Mandarin Chinese
  • & search Bibliography Search in Mandarin Chinese
  • Check MySQL DB table biblio, to see if the string stored in Mandarin Chinese. You can use freeware Toad for MySQL to do it.
  • Try again in Simplified Chinese


Reference

discussion