| 
		
			| Installation problem with Parallels Plesk [message #4173] | Wed, 21 May 2014 04:26  |  
			| 
				
				
					|  htManager Messages: 456
 Registered: May 2014
 | Senior Member |  |  |  
	| Hi, 
 I am about to try to develop a web application for team handball with Radicore. The application is running fine on my PC with a desktop database called Paradox for Windows and a language called ObjectPAL.
 
 I am not an expert so it is very difficult for me to get it done. I read about Radicore and I believe in dealing with it will make it a lot easier for me to succeed.
 
 I run a local XAMPP development-version an everything works fine.
 Now I wanted to test it on the web I have a lot of problems.
 
 My domain is www.htmanager.de where Joomla! 2.5 is running. (The same on my local PC). My ISP is Parallel Plesk. The problem I have is, that Technical Support told me that my problems come from the Radicore software. But I don't think so. I read most of the forum entries concerning database creation, user-id and password and I think that I did it right.
 
 There is a lot written about the .htaccess file. In Parallel Plesk you can set up the include path in PHP settings, so that's why I don't use a .htaccess file and because I am not sure to do it right.
 
 In the browser this message shows up:
 [Tue May 20 10:11:58 2014] [warn] [client 217.91.254.197] mod_fcgid: stderr: PHP Fatal error:  Maximum execution time of 60 seconds exceeded in  /var/www/vhosts/mgh-saar.de/htm/htmanager/includes/include.l ibrary.inc on line 3933, referer: http://www.htmanager.de/htmanager/index.html
 
 The following message is retrieved by the webmaster, when trying to login:
 
 2014-05-20 08:48:49
 Fatal Error: MySQL: Access denied for user 'MGH_HTM_USER01'@'%' to database 'mgh_audit' (# 1044)
 Error in line 91 of file  '/var/www/vhosts/mgh-saar.de/htm/htmanager/includes/dml.mysq li.class.inc'.
 Host Info: Localhost via UNIX socketServer Version: 5.1.73-0ubuntu0.10.04.1Client Version: 5.1.73, Character sets - client: utf8, - connection: utf8, - database: latin1, - server: latin1
 PHP_SELF: /htmanager/menu/logon.php
 CURRENT DIRECTORY: /var/www/vhosts/mgh-saar.de/htm/htmanager/menu
 SERVER_ADDR: 92.51.173.128
 SERVER_NAME: www.htmanager.de
 HTTP_HOST: www.htmanager.de
 REMOTE_ADDR: 217.91.254.197
 REQUEST_URI: /htmanager/menu/logon.php?csxslt=off
 
 Page Stack:
 Backtrace:
 0: array =
 function: string = errorHandler
 args: array =
 0: integer = 256
 1: string = MySQL: Access denied for user 'MGH_HTM_USER01'@'%' to database 'mgh_audit'
 2: string =  /var/www/vhosts/mgh-saar.de/htm/htmanager/includes/dml.mysql i.class.inc
 3: integer = 91
 4: object = mysql
 1: array =
 file: string =  /var/www/vhosts/mgh-saar.de/htm/htmanager/includes/dml.mysql i.class.inc
 line: integer = 91
 function: string = trigger_error
 args: array =
 0: string = MySQL: Access denied for user 'MGH_HTM_USER01'@'%' to database 'mgh_audit'
 1: integer = 256
 2: array =
 file: string =  /var/www/vhosts/mgh-saar.de/htm/htmanager/includes/std.singl eton.php5.inc
 line: integer = 93
 function: string = mysql
 class: string = mysql
 type: string = ->
 args: array =
 0: array =
 dbname: string = mgh_audit
 dbhost: string = localhost
 dbusername: string = MGH_HTM_USER01
 dbuserpass: string = password
 3: array =
 file: string =  /var/www/vhosts/mgh-saar.de/htm/htmanager/includes/std.table .class.inc
 line: integer = 7635
 function: string = getInstance
 class: string = RDCsingleton
 type: string = ::
 args: array =
 0: string = mysql
 1: array =
 dbname: string = mgh_audit
 dbhost: string = localhost
 dbusername: string = MGH_HTM_USER01
 dbuserpass: string = password
 2: boolean = 1
 3: boolean =
 4: array =
 file: string =  /var/www/vhosts/mgh-saar.de/htm/htmanager/includes/std.table .class.inc
 line: integer = 6933
 function: string = _getDBMSengine
 class: string = Default_Table
 type: string = ->
 args: array =
 0: string = audit
 5: array =
 file: string =  /var/www/vhosts/mgh-saar.de/htm/htmanager/audit/classes/php_ session.class.inc
 line: integer = 63
 function: string = _dml_getData
 class: string = Default_Table
 type: string = ->
 args: array =
 0: string = session_id='6j8f2oklpe7p7bd5liq50nrrb1'
 6: array =
 function: string = read
 class: string = php_session
 type: string = ->
 args: array =
 0: string = 6j8f2oklpe7p7bd5liq50nrrb1
 7: array =
 file: string = /var/www/vhosts/mgh-saar.de/htm/htmanager/menu/logon.php
 line: integer = 45
 function: string = session_start
 args: array =
 
 I created the databases as told and I verified that the user has access to the database by a php-script.
 
 Have you an idea what I do wrong? Does it come from the settings for open_basedir?
 
 Many thanks in advance,
 
 Best regards,
 
 Juergen
 |  
	|  |  | 
	| 
		
			| Re: Installation problem with Parallels Plesk [message #4174 is a reply to message #4173] | Wed, 21 May 2014 05:18   |  
			| 
				
				
					|  AJM Messages: 2386
 Registered: April 2006
 Location: Surrey, UK
 | Senior Member |  |  |  
	| Your error message is not complaining about an issue with an 'include()' or 'require()' statement, so it is not to do with your include path. 
 The error message is actually saying "Access denied for user 'MGH_HTM_USER01'@'%' to database 'mgh_audit'", so you need to check two things:
 (1) Does the database 'mgh_audit' actually exist? On my shared server each database is prefixed with my account name, so is 'mgh' your account name?
 (2) Does the user name 'MGH_HTM_USER01' actually exist? Does it have access to the 'mgh_audit' database?
 
 You need to check your database names, user names and user privileges using your MySQL admin tool, which is usually phpMyAdmin.
 
 
 
 Tony Marston
 http://www.tonymarston.net
 http://www.radicore.org
 |  
	|  |  | 
	|  | 
	|  | 
	| 
		
			| Re: Installation problem with Parallels Plesk [message #4177 is a reply to message #4176] | Wed, 21 May 2014 06:34   |  
			| 
				
				
					|  htManager Messages: 456
 Registered: May 2014
 | Senior Member |  |  |  
	| Here is my config.inc-file. 
 //  ************************************************************ *****************
 // Copyright 2003-2005 by A J Marston <http://www.tonymarston.net>
 // Copyright 2006 by Radicore Software Limited <http://www.radicore.org>
 //  ************************************************************ *****************
 
 // This file contains database access details and the standard connection function
 $GLOBALS['dbms']   = 'mysql';       // database engine is MySQL
 //$GLOBALS['dbms']   = 'pgsql';      // database engine is PostgreSQL
 //$GLOBALS['dbms']   = 'oracle';     // database engine is Oracle
 //$GLOBALS['dbms']   = 'sqlsrv';     // database engine is SQL Server (Microsoft)
 
 if ($GLOBALS['dbms'] == 'oracle') {
 $GLOBALS['dbhost']   = '//localhost/xe';
 $GLOBALS['dbprefix'] = '';
 
 } elseif ($GLOBALS['dbms'] == 'sqlsrv') {
 // JOIN clauses in SQL Server require 'dbname.<schema>.tblname'
 $GLOBALS['dbhost']         = 'localhost';
 $GLOBALS['dbprefix']       = '';
 $GLOBALS['SQLSRV_schema']  = 'dbo';
 $GLOBALS['serverName']     = '(local)';
 $GLOBALS['connectionInfo'] = array('CharacterSet' => 'UTF-8',
 'ReturnDatesAsStrings' => true);
 
 } elseif ($GLOBALS['dbms'] == 'pgsql') {
 // NOTE: with MYSQL there are tables withing databases, and within a single connection
 // it is possible to access tables in any database.
 // But with PostgreSQL there are tables within schemas within databases, and within
 // a single connection it is only possible to access a single database, but any number
 // of schemas within that database.
 // When using PostgreSQL you must supply a value for $PGSQL_dbname for the single database
 // connection, and what is known as 'dbname' to MySQL becomes 'schema' to PostgreSQL.
 $GLOBALS['dbhost']       = 'localhost';
 $GLOBALS['dbprefix']     = '';
 $GLOBALS['PGSQL_dbname'] = ''; //radicore';
 
 } else {
 $GLOBALS['dbhost']   = 'localhost';
 $GLOBALS['dbprefix'] = 'mgh_';
 } // if
 
 // NOTE: $dbprefix is for my web host (shared) where my databases are prefixed
 // with my account name to keep them separate from other accounts.
 
 if  (preg_match('/^(local\.radicore\.org|127.0.0.1|localhost|des ktop|laptop)$/i', $_SERVER['SERVER_NAME'])) {
 // this is for my PC
 global $servers;
 // server 0
 $servers[0]['dbhost']     = $GLOBALS['dbhost'];
 $servers[0]['dbengine']   = $GLOBALS['dbms'];
 if (isset($GLOBALS['SQLSRV_schema'])) {
 $servers[0]['SQLSRV_schema']   = $GLOBALS['SQLSRV_schema'];
 $servers[0]['serverName']      = $GLOBALS['serverName'];
 $servers[0]['connectionInfo']  = $GLOBALS['connectionInfo'];
 } // if
 if (isset($GLOBALS['PGSQL_dbname'])) {
 $servers[0]['PGSQL_dbname']   = $GLOBALS['PGSQL_dbname'];
 } // if
 $servers[0]['dbusername'] = 'MGH_HTM_USER01';
 $servers[0]['dbuserpass'] = 'password';
 $servers[0]['dbport']     = '';
 $servers[0]['dbsocket']   = '';
 $servers[0]['dbprefix']   = $GLOBALS['dbprefix'];
 $servers[0]['dbnames']    =  'audit,radicore,menu,dict,workflow,classroom,product,survey, xample';
 
 // server 1
 $servers[1]['dbhost']     = $GLOBALS['dbhost'];
 $servers[1]['dbengine']   = $GLOBALS['dbms'];
 $servers[1]['dbusername'] = 'MGH_HTM_USER01';
 $servers[1]['dbuserpass'] = 'password';
 $servers[1]['dbport']     = '';
 $servers[1]['dbsocket']   = '';
 $servers[1]['dbprefix']   = 'mgh_';
 $servers[1]['dbnames']    = '*';
 
 // set these only if secure HTTPS protocol is available on your server
 $GLOBALS['http_server']  = ''; //'local.radicore.org';
 $GLOBALS['https_server'] = ''; //'local.radicore.org';
 $GLOBALS['https_server_suffix'] = '';
 //define('HTTPS_NOT_FOR_FILES', true);
 
 } else {
 // this is for my shared web host
 $GLOBALS['dbusername'] = 'MGH_HTM_USER01';
 $GLOBALS['dbuserpass'] = 'password';
 $GLOBALS['dbprefix']   = 'mgh_';
 // set these only if secure HTTPS protocol is available on your server
 $GLOBALS['http_server']  = 'www.htmanager.de';
 //$GLOBALS['https_server'] = 'starburst.secureguards.com/~radicore';
 $GLOBALS['https_server'] = ''; //'titan.secureguards.com/~radicore';
 $GLOBALS['https_server_suffix'] = ''; //' /~radicore';
 // define this only if content such as CSS or JS files are not to be referenced using HTTPS
 //define('HTTPS_NOT_FOR_FILES', true);
 // converts datetime between client and server timezones (PHP version >= 5.2)
 //$GLOBALS['server_timezone'] = 'America/New_York';
 //date_default_timezone_set('America/New_York');
 } // if
 
 // set this to true if you want all XSL transformations to be done by the client
 // (NOTE: only valid if supported by your client browser)
 $GLOBALS['XSLT_client_side'] = false;
 
 // set this to TRUE to write all sql queries to file 'sql/<script_id>.sql' (for debugging)
 $GLOBALS['log_sql_query'] = false;
 
 // set date format - choose one of te following
 $GLOBALS['date_format'] = 'dmy';
 //$GLOBALS['date_format'] = 'mdy';
 //$GLOBALS['date_format'] = 'ymd';
 
 // set this to TRUE to write all XML documents to file 'xsl/<script_id>.xml' (for debugging)
 if  (preg_match('/^(local\.radicore\.org|localhost|desktop|lapto p)$/i', $_SERVER['SERVER_NAME'])
 or $_SERVER['REMOTE_ADDR'] == 'htmanager.de') {
 //or $_SERVER['REMOTE_ADDR'] == '92.51.173.128') {
 $GLOBALS['log_xml_document'] = true;
 } else {
 $GLOBALS['log_xml_document'] = false;
 } // if
 
 // use HTTPS for all web pages
 $GLOBALS['use_https'] = false;
 
 // use to access files in the 'classes/custom-processing/<project>/' folder
 //$GLOBALS['project_code'] = 'unknown';
 
 // redirect all outgoing emails to this address
 define('MAIL_TO_REDIRECT', 'juergen@hartz.biz');
 
 // defines email address(es) to which any error_log will be sent
 define('ERROR_LOG_MAILTO', 'juergen@hartz.biz');
 
 // defines directory into which error logs will be written
 define('ERROR_LOG_DIR', $_SERVER['DOCUMENT_ROOT'].'/docs/logs');
 
 if (preg_match('/^(local\.)/i', $_SERVER['SERVER_NAME'])
 OR $_SERVER['REMOTE_ADDR'] == '92.51.173.128') {
 // causes the logstuff() function to write details to the log file
 //define('LOGSTUFF', true);
 } // if
 
 |  
	|  |  | 
	| 
		
			| Re: Installation problem with Parallels Plesk [message #4178 is a reply to message #4177] | Wed, 21 May 2014 07:04   |  
			| 
				
				
					|  AJM Messages: 2386
 Registered: April 2006
 Location: Surrey, UK
 | Senior Member |  |  |  
	| You are setting $GLOBALS['dbprefix'] = 'mgh_'; which is correct. One difference I can see is that in your config.inc file you are setting $GLOBALS['dbhost'] to 'localhost' while in your script you are setting $db_server to 'ip-address'. Are you using 'localhost' or a specific ip address? 
 I also notice that you test script uses the 'MySQL_' extension whereas the Radicore code is using the 'mysqli_' extension. Are you aware that the different extensions use different password mechanisms?
 
 
 
 
 Tony Marston
 http://www.tonymarston.net
 http://www.radicore.org
 |  
	|  |  | 
	|  | 
	| 
		
			| Re: Installation problem with Parallels Plesk [message #4180 is a reply to message #4179] | Wed, 21 May 2014 10:41   |  
			| 
				
				
					|  AJM Messages: 2386
 Registered: April 2006
 Location: Surrey, UK
 | Senior Member |  |  |  
	| SQL is case INsensitive, but on some file systems which are case sensitive such as Linux/unix where the database and table names map to disk files or directories they can become case sensitive. I do not like case sensitive software in any shape or form, so to avoid any problems my software will ALWAYS shift database, table and column names to lower case. Please refer to section 5.A of the installation instructions at http://www.radicore.org/installation.php 
 You should therefore not use upper case characters in any names, either in the database or in your code.
 
 Tony Marston
 http://www.tonymarston.net
 http://www.radicore.org
 |  
	|  |  | 
	| 
		
			| Re: Installation problem with Parallels Plesk [message #4181 is a reply to message #4180] | Wed, 21 May 2014 11:07  |  
			| 
				
				
					|  htManager Messages: 456
 Registered: May 2014
 | Senior Member |  |  |  
	| Thanks a lot Sir, 
 I renamed the databases to lower case and everything works fine.
 
 Only the dbprefix (account name) is upper case but and this is probably the reason why I wrote the database names in upper case too.
 
 I read the installation instructions several time but not as careful as I should.
 
 Once more thank you very much,
 
 Best regards,
 
 Juergen
 |  
	|  |  |