<!-- $Id: install.trouble.hlp,v 1.1 2003/07/01 04:12:13 kobudo Exp $ -->
<h1>Troubleshooting dotProject</h1>

<h2>config.php settings</h2>
<ol>
	<li>On a new installation, have you created a copy of the distribution file called <b>config-dist.php</b> called <b>config.php</b>?</li>
	
	<li>When upgrading an existing installation, have you checked that any new configuration settings in <b>config-dist.php</b> have been transferred to <b>config.php</b>?</li>
	
	<li>Is the <b>root_dir</b> variable set correctly.</li>
	
	<li>Is there any white space (including carriage returns) after the closing php brace ?&gt;.  If so, delete them.  This cause the html headers to be sent too early.</li>

	<li>When upgrading, have you set the configuration variable <code>check_legacy_password</code> to <code>true</code>.
	<pre>$dPconfig['check_legacy_password'] = true;</pre>
	</li>
</ol>


<h2>php.ini file settings</h2>
<ol>
	<li>
		<b>register_globals = off</b>
		<br />Set to off, this hould generally work satisfactorily but you could try setting it to on.
	</li>
	<li>
		<b>session.auto_start = 0</b>
		<br />This may generally be set to zero.  If you are experiencing trouble and this variable is set to 1, try setting it to 0.
	</li>
	<li>
		<b>session.save_path = /tmp</b> (*nix style)
		<br /><b>session.save_path = "d:/apache/php/sessiontemp"</b> (Windows style)
		<br />Check that this directory actually exists.
	</li>
	<li>
		<b>file_uploads = on</b>
		<br />Set to on to enable the file upload module. You will also need to have appropriate permissions on the file folder. Maximum upload size can also be configured in <b>php.ini</b>.
	</li>
</ol>

<h2>Maximum File Upload Size [php.ini file settings]</h2>
The maximum file upload size will depend on:<br />
<ol>
	<li>
		<b>Server Configuration</b>
	</li>
	<li>
		<b>Bandwidth Connectivity</b>
	</li>
</ol>
For the most part, you can control the ability of uploading LARGE (>8mb files) by modification of your <code>php.ini</code> file. However, your modifications will likely go beyond simply tweeking the <code>upload_max_filesize</code> variable.<br />
<br />
Here are some sample <code>php.ini</code> modifications used to get a 11mb+ upload to function:<br />
<br />
<pre>
	<code>upload_max_filesize = 20M </code>; DEFAULT is 2M 
	<code>max_execution_time = 300 </code>; DEFAULT is 30 [seconds] 
	<code>post_max_size = 12M </code>; DEFAULT is 8M 
</pre>
You may also find it necessary to modify the <code>memory_limit</code> Resource Limit, but this shouldn't be an issue if you have good bandwidth.<br />
<br />
In order to get a 3MB upload to work within our LAN environment, it was only necessary to modify the <code>upload_max_filesize</code> variable. However, file uploads may fail because of script timeouts exceeding <code>max_execution_time</code> if you have a poor network connection between your client and server (e.g. dialup).<br />
<br />
Please remember to restart Apache after making modifications to <code>php.ini</code>.<br /><br /> 

<h2>PHP</h2>
<ol>
	<li>You need PHP version 4.1.x or higher.</li>
	<li>Is <b>MySQL</b> correctly compiled with PHP on a *nix server.  You can check this by writing a simple little php file that simply contains:
	<pre>&lt;?php phpinfo(); ?&gt;</pre>
	Point your browser at this file (via your web server!) and see if there are configuration entries for MySQL.
	</li>

	<li>If the Gantt charts aren't working, have you compiled the GD libraries with PHP?</li>
</ol>

<h2>Other thigs to try</h2>
<p>There is a line in ./index.php that looks like this:
<pre>// If you experience a 'white screen of death' or other problems,
// uncomment the following line of code:
//error_reporting( E_ALL );</pre>
Un-comment the error reporting line to see if any error messages appear.</p>

<h2>General Things</h2>
<p>The project percent complete is calculated on a weighed average of the task durations.  Therefore, a project may not be 50% complete even if it had two tasks at 50% complete but they were of different durations.  If no tasks have any duration then the project will always show 0% complete.</p>

</p>If you are wanting to use the translation management facilities, the <code>locales/{country code}</code> directory and all the files within this diectory (the *.inc files) will need to have the correct permissions under a POSIX based system to allow the web-server to write to these directories.</p>

<h2>Help!</h2>
<p>If all else fails then post your problem on the SourceForge forum or Tracker.  However, to help out we remote developers, please include the following information:</p>

<ul>
	<li>Your PHP and MySQL version.</li>
	<li>Your web server and it's version.</li>
	<li>Your browser and version is useful.</li>
	<li>The version of dotProject you are using (file release or CVS).</li>
</ul>

<p>Please describe the problem as best you can.  Try not to say "The contacts links are broken".  Something like "When I click on the letters on the Contacts index page, it takes me to the user admin list." would be much better and helps us home in on the problems a lot quicker.<p>

<p>Another example might be "When I try and edit a project I get the error 'create a company first'".  The critical piece of information missing here is the fact the dotProject user only has read-write permissions to the Projects module.</p>
