[[!FormIt?
&hooks=`redirect,install_bash_script`
&redirectTo=`20`
&store=`1`
&zen_inst_db_server=`[[+fi.dbserver]]`
&zen_inst_db_name=`[[+fi.dbname]]`
&zen_inst_db_user=`[[+fi.dbuser]]`
&zen_inst_db_u_pass=`[[+fi.dbpassword]]`
&customValidators=`install_validation`
&validate=`dbserver:required,
dbname:required,
dbuser:required,
dbpassword:required,
custom_validation_flag:install_validation`
]]
<p>Database Connection test</p>
<p> </p>
[[!+fi.error.error_message:notempty=`
<p>[[!+fi.error.error_message]]</p>
`]]
<form class="form" action="[[~[[*id]]]]" method="post">
<input name="formid" type="hidden" value="zenInstall" />
<input name="custom_validation_flag" type="hidden" value="1" />
[[!+fi.error.custom_validation_flag]]
<fieldset>
<legend>Database Details</legend>
<p>
<label>Database Server</label>
[[!+fi.error.dbserver]]
<select id="dbserver" name="dbserver">
<option value="mysql.ourdomain.co.uk" [[!+fi.dbserver:FormItIsSelected=`mysql.ourdomain.co.uk`]]>mysql.ourdomain.co.uk</option>
<option value="hotel.ourdomain.co.uk" [[!+fi.dbserver:FormItIsSelected=`hotel.ourdomain.co.uk`]]>dev-mysql.ourdomain.co.uk</option>
</select></p>
<p>
<label>Database Name:</label>
[[!+fi.error.dbname]]
<input id="dbname" class="field" maxlength="40" name="dbname" size="40" type="text" value="[[!+fi.dbname]]" />
</p>
<p>
<label>Database Username:</label>
[[!+fi.error.dbuser]]
<input id="dbuser" class="field" maxlength="40" name="dbuser" size="40" type="text" value="[[!+fi.dbuser]]" />
</p>
<p>
<label>Database Password:</label>
[[!+fi.error.dbpassword]]
<input id="dbpassword" class="field" maxlength="40" name="dbpassword" size="40" type="text" value="[[!+fi.dbpassword]]" />
</p>
</fieldset>
<input name="submit" type="submit" value="Run Script" />
</form>
<?php
$db_server = $modx->getOption('zen_inst_db_server',$scriptProperties);
$db_name = $modx->getOption('zen_inst_db_name',$scriptProperties);
$db_u_name = $modx->getOption('zen_inst_db_user',$scriptProperties);
$db_u_pass = $modx->getOption('zen_inst_db_u_pass',$scriptProperties);
$db_server=(string)$db_server;
$db_u_name=(string)$db_u_name;
$db_u_pass=(string)$db_u_pass;
$zdb_server = ereg_replace("[^A-Za-z0-9\. ]", "", "$db_server");
echo $zdb_server;
//check db
$link = @ mysql_connect($db_server,$db_u_name,$db_u_pass);
if (!$link) {
$validator->addError('custom_validation_flag','Database Connection Problem');
echo mysql_error();
return false;
}else{
mysql_close($link);
}
return true;
