X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/timetracker.git/blobdiff_plain/f74704271ae5d37aee3fdf941f3462c8b92ad0fd..278a83090d6bf9d6351a449ba045323088f678aa:/dbinstall.php diff --git a/dbinstall.php b/dbinstall.php index c32695d5..6561649e 100755 --- a/dbinstall.php +++ b/dbinstall.php @@ -55,6 +55,16 @@ if ($request->isGet()) { // Require the configuration file with application settings. if (file_exists(APP_DIR."/WEB-INF/config.php")) { echo('WEB-INF/config.php file exists.
'); + + // Config file must start with the PHP opening tag. We are checking this because + // a Unicode editor may insert a byte order mark (BOM) before it. This is not good as it will + // spit white space before output in some situations such as in PDF reports. + $file = fopen(APP_DIR.'/WEB-INF/config.php', 'r'); + $line = fgets($file); + if (strcmp('Error: WEB-INF/config.php file does not start with PHP opening tag.
'); + } + fclose($file); } else { echo('Error: WEB-INF/config.php file does not exist.
'); } @@ -67,6 +77,14 @@ if ($request->isGet()) { echo('Error: DSN value is not defined. Check your config.php file.
'); } + // Check if PHP version is good enough. + $required_version = '5.2.1'; // Something in TCPDF library does not work below this one. + if (version_compare(phpversion(), $required_version, '>=')) { + echo('PHP version: '.phpversion().', good enough.
'); + } else { + echo('Error: PHP version is not high enough: '.phpversion().'. Required: '.$required_version.'.
'); + } + // Depending on DSN, require either mysqli or mysql extensions. if (strrpos(DSN, 'mysqli://', -strlen(DSN)) !== FALSE) { if (extension_loaded('mysqli')) {