Print this page

Downloads

 

TAR Balls

No Downloads yet? To be advised!

 


BigNoZePicks Demo Installation


SYSTEM OVERVIEW/REQUIREMENTS:


1.1: Although a bunch of mates advise on project design and occasionally they also wade in and help test, I do the bulk of the work in my spare (?) time. This is called the IDEM! (I Do Everything Mate!) system of software development - so programming resources are very, very scarce.


Needs must when the devil drives - so a lot of stuff you may expect to see for a production system is not yet done and need never be. As at 1st March 2010 BigNoZePicks/Pickets/Bogey is only at alpha stage – and it was started over a few beers Australia Day 2008.

 

These installation notes refer to a typical LAMP installation - for context I have assumed the same as my development installation


Linux - Mandriva 2009.0

Apache 2.0 or newer- DocumentRoot=/var/www/html

MySQL 5.0 or newer

SQLITE3

PHP 5.2.0 or newer


so substitute your own Operating System/Webserver paradigms.


1.2: While many programmers happily develop PHP with WAMP,XAMPP etc on Windows and MAMP on Macs - I don't. In fact I don't use Windows or Macs for anything.


Even so I gave the latest code a whirl on the latest XAMPP server

 

"We've released the new version of XAMPP 1.7.3, including:


* Apache 2.2.14 (IPv6 enabled) + OpenSSL 0.9.8l

* MySQL 5.1.41 + PBXT engine

* PHP 5.3.1"


and it kept giving errors. I have however run BigNoZePicks successfully on XAMPP version 1.6.0a and that's enough of that sort of stuff for me. If you are are PHP Windows developer – good luck.


1.3: BigNoZePicks uses PHP5 and the PDO PHP Data Objects to connect to either MySQL and/or SQLITE3. So if you don't have PDO for these 2 DBs included in your PHP5 installation you wont be able to run BigNoZePicks.


The database type and connection is located in ./includes/config.php and you can follow the comments in there to include your MySQL or SQLITE3 connection parameters.


In ./includes/config.php there is also provision for an ./includes/secretsql.php file for

additional/replacement parameters. That way if you update the code base your database connection parameters wont be lost.


SYSTEM INSTALLATION:


The simplest installation (ie. accessing the SQLITE3 database ./bignozepicksdemo.sqlite3)


2.1: tar -xvf bignozepicksdemo.yyyy-mm-dd.tar


to the root directory of your Apache server


Then maybe first read through the SYSTEM GOTCHAS below.


2.2: Point Firefox to (other browsers may work - dont know - see IDEM in 1.1 above)


http://localhost/bignozepicksdemo


And the BigNoZePicks login screen should appear - login as


Member - demo2

Password - demo2


and start clicking.


The next simplest installation


2.3: Use your MySQL client to load the bignozepicksdemo database


./bignozepicksdemo.mysql


and update your MySQL server connection parameters in ./includes/config.php

and do 2.2 above.


SYSTEM GOTCHAS:


Here are some classic gotchas that will bust your BigNoZePicks installation. Most installation gotchas are paths and permissions – unless of course they are permissions and paths. The simplest way to solve permissions is to make all files and subdirectories writeable by Apache - eg.


chmod 777 -R /var/www/html/bignozepicksdemo

and I'd also recommend

chgrp apache -R /var/www/html/bignozepicksdemo


which is not so good for production systems – but we are only at Alpha/Demo – so there!



3.1: BigNoZePicks uses Smarty templates - so Apache needs permission to write to

./smarty.tpl/templates_c

and

./smarty.tpl/cache



3.2: BigNoZePicks use FPDF to create PDF files and Apache needs permission to writes to

./tempdf


3.3: ./test.png holds the batting wagonwheel graphic and needs to be writeable by Apache.


3.4: If you are using the SQLITE3 demo database you will may need to make the directory ./bignozepicksdemo Apache (ie. not just the database file ./bignozepicksdemo/bignozepicksdemo.sqlite3 itself but also the subdirectory ) . BigNoZePicks may appear to work okay - it just wont let you write back to the database? writeable by

 

3.5: If your PHP5 installation is using the suhosin extension (Hardened-PHP Project) you will need to expand the maximum number of $_POST variables. eg cricket.php uses well over 200 $_POST variables which is the default in Z##_sushosin.ini. Use phpinfo() to check your installation for suhosin.


Assuming you have managed to get the demo installation working - here are a few clues for the

programmers/sysadmins amongst you.


OTHER SYSTEM STUFF:


4.1: Program documentation is created using phpDocumentor and appears at

file:///var/www/html/bignozepicksdemo/bnpdoco/index.html

or via your Apache server at

http://localhost/bignozepicksdemo/bnpdoco/index.html



4.2: The Help screens are also created via phpDocumentor - the source DocType files are in


bignozepicksdemo/tutorial/bignozepicks

/bnphelp

/bnphelpadmin


and the HTML files produced by phpDocumentor in


bignozepicksdemo/bnpdoco/bnphelp

/bnphelpadmin


4.3: The PHP programs appear in the main bignozepicksdemo directory (eg. ./golf.php) and if you

want to see the SQL calls and/or the SQL result sets there's two methods called


Set_show_sql() and Set_show_dumps()


at the top of each of PHP scripts. For each of the competition and tipster classes.

 

So if you go into ./golf.php and change

 

$bout->Set_show_sql(false)

to $bout->Set_show_sql(!false)


You should see all the SQL calls made from the ./includes/competition.oop.php class .



4.4: The different Smarty templating for footy tipping comp versus cricket/golf scoring etc are driven by a global variable $BASE_SPORT.


By default if $BASE_SPORT is not set I check


$_SERVER["BASE_HTTP_HOST"]

$_SERVER["BASE_SERVER_NAME"]

$_SERVER["BASE_REQUEST_URI"]


for the occurrence of the string 'bogey' or 'pickets' in the URL.


See ./includes/stanvar.inc.php for this chunk of code.


So if you have extracted the demo to /var/www/html/bignozepicksdemo and want to see it run in

only cricket or golf mode - rename /var/www/html/bignozepicksdemo to something like


/var/www/html/bignozepicksdemopickets

or

/var/www/html/bignozepicksdemobogey

respectively.


A better way to do this in Linux is use symbolic links eg.


cd /var/www/html

ln -s bignozepicksdemo bignozepicksdemobogey

ln -s bignozepicksdemo bignozepicksdemopickets


and then point your browser to


http://localhost/bignozepicksdemobogey

or

http://localhost/bignozepicksdemopickets


and the screens will be different for each of tipping/cricket/golf.


Good Luck!


Bignoze.


– End of Document --

 

 


Previous page: BigNoZePickets Demos
Next page: Technical Snapshot