Re: [Mccodes V2] Set Up V2 the way you want it without altering files....
This is a Self Installer and will allow you to add your items text if you already have a SQL in operation it will ONLY add to the SQL what you need and wont interfere with any other part of your game......
call this file installer2000.php
<?php
/* Settings Installer Re-modded from installer.php
/ Illusions 2009 */
session_start();
ob_start();
function valid_email($email) {
// First, we check that there's one @ symbol, and that the lengths are right
if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) {
// Email invalid because wrong number of characters in one section, or wrong number of @ symbols.
return false;
}
// Split it into sections to make life easier
$email_array = explode("@", $email);
$local_array = explode(".", $email_array[0]);
for ($i = 0; $i < sizeof($local_array); $i++) {
if (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i])) {
return false;
}
}
if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) { // Check if domain is IP. If not, it should be valid domain name
$domain_array = explode(".", $email_array[1]);
if (sizeof($domain_array) < 2) {
return false; // Not enough parts to domain
}
for ($i = 0; $i < sizeof($domain_array); $i++) {
if (!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$", $domain_array[$i])) {
return false;
}
}
}
return true;
}
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Mccodes Version 2</title>
<script language="JavaScript">
<!--
function getCookieVal (offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}
function SetCookie (name,value,expires,path,domain,secure) {
document.cookie = name + "=" + escape (value) +
((expires) ? "; expires=" + expires.toGMTString() : "") +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
}
function DeleteCookie (name,path,domain) {
if (GetCookie(name)) {
document.cookie = name + "=" +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
"; expires=Thu, 01-Jan-70 00:00:01 GMT";
}
}
// -->
</script>
<script language="JavaScript">
var usr;
var pw;
var sv;
function getme()
{
usr = document.login.username;
pw = document.login.password;
sv = document.login.save;
if (GetCookie('player') != null)
{
usr.value = GetCookie('username')
pw.value = GetCookie('password')
if (GetCookie('save') == 'true')
{
sv[0].checked = true;
}
}
}
function saveme()
{
if (usr.value.length != 0 && pw.value.length != 0)
{
if (sv[0].checked)
{
expdate = new Date();
expdate.setTime(expdate.getTime()+(365 * 24 * 60 * 60 * 1000));
SetCookie('username', usr.value, expdate);
SetCookie('password', pw.value, expdate);
SetCookie('save', 'true', expdate);
}
if (sv[1].checked)
{
DeleteCookie('username');
DeleteCookie('password');
DeleteCookie('save');
}
}
else
{
alert('You must enter a username/password.');
return false;
}
}
</script>
<style type="text/css">
<!--
body {
background-color: #DEDEDE;
margin-top: 0px;
margin-bottom: 0px;
font-family:calibri, helvetica, arial, geneva, sans-serif;font-size:12px;color: black;
scrollbar-base-color: #005B70;
scrollbar-arrow-color: #F3960B;
scrollbar-DarkShadow-Color: #000000;
}
a:visited,a:active,a:hover,a:link { color: black;text-decoration: none; }
table,tr,td { font-family:helvetica, arial, geneva, sans-serif;font-size: 12px; }
img { border:none; }
textarea { font-family:helvetica, arial, geneva, sans-serif;font-size:12px;color: black; }
.table2 {
}
.lgrad {
background-image:url(lgrad.jpg);
background-repeat:repeat-y;
width:19px;
}
.linegrad {
background-image:url(linegrad.PNG);
background-repeat:repeat-y;
background-align: center;
width:2px;
}
.rgrad {
background-image:url(rgrad.jpg);
background-repeat:repeat-y;
width:19px;
}
.dgrad {
background-image:url(dgrad.jpg);
background-repeat:repeat-x;
height:38px;
}
.dgradl {
background-image:url(dgradl.jpg);
background-repeat:no-repeat;
height:38px;
width:38px;
}
.dgradr {
background-image:url(dgradr.jpg);
background-repeat:no-repeat;
height:38px;
width:38px;
}
.center {
width:932px;
background-color:#FFFFFF;
vertical-align:top;
text-align:center;
}
.table {
background-color:#000000;
}
.table3 {
background-color:#000000;
}
.table td {
background-color:#DEDEDE;
height:22px;
}
.table3 td {
background-color:#CCCCCC;
}
td .alt {
background-color:#EEEEEE;
height:22px;
}
td .h {
background-image:url(tablehgrad.png);
background-repeat:repeat-x;
font-weight: bold;
background-color: #D6D6D6;
}
.table th {
background-image:url(tablehgrad.png);
background-repeat:repeat-x;
font-weight: bold;
background-color: #D6D6D6;
}
-->
</style></head>
<body onload="getme();">
<center>
<table width="970" border="0" cellpadding="0" cellspacing="0" class="table2">
<tr>
<td class="lgrad"></td>
<td class="center">[img=title.jpg]
<h2>Installer</h2>
<?php
switch($_GET['code'])
{
case "install":
install();
break;
case "config":
config();
break;
default:
diagnostics();
break;
}
function menuprint($highlight)
{
$items=array(
'diag' => '1. Diagnostics',
'input' => '2. Configuration',
'sql' => '3. Installation & Extras',
);
$c=0;
print "<hr />";
foreach($items as $k => $v)
{
$c++;
if($c > 1) { print " >> "; }
if($k==$highlight)
{
print "<font color='black'>{$v}</font>";
}
else
{
print "<font color='gray'>{$v}</font>";
}
}
print "<hr />";
}
function diagnostics()
{
menuprint("diag");
if (version_compare(phpversion(), '4.2.0') < 0)
{
$pv="<font color='red'>Failed</font>";
$pvf=0;
}
else
{
$pv="<font color='green'>OK</font>";
$pvf=1;
}
if(is_writable('./'))
{
$wv="<font color='green'>OK</font>";
$wvf=1;
}
else
{
$wv="<font color='red'>Failed</font>";
$wvf=0;
}
if(function_exists('mysql_connect') || function_exists('mysqli_connect'))
{
$dv="<font color='green'>OK</font>";
$dvf=1;
}
else
{
$dv="<font color='red'>Failed</font>";
$dvf=0;
}
if(str_replace('installer2000.php','',$_SERVER['SCRIPT_NAME']) == "/")
{
$av="<font color='green'>OK</font>";
$avf=1;
}
else
{
$av="<font color='red'>Failed</font>";
$avf=0;
}
print "<h3>Basic Diagnostic Results:</h3>
<table width='80%' class='table' cellspacing='1'>
<tr>
<td>PHP version >= 4.2.0</td>
<td>{$pv}</td>
</tr>
<tr>
<td>Game folder writable</td>
<td>{$wv}</td>
</tr>
<tr>
<td>MySQL support in PHP present</td>
<td>{$dv}</td>
</tr>
<tr>
<td>Game installed at root level of domain or subdomain</td>
<td>{$av}</td>
</tr>
</table>";
if($pvf+$wvf+$dvf+$avf < 4)
{
print "<hr /><font color='red'>One of the basic diagnostics failed, so Setup cannot continue. Please fix the ones that failed and try again.</font><hr />";
}
else
{
print "<hr />> [url='installer2000.php?code=config']Next Step[/url]<hr />";
}
}
function config()
{
menuprint("input");
print "<h3>Configuration:</h3>
<center>
<form action='installer2000.php?code=install' method='post'>
<table width='75%' class='table' cellspacing='1'>
<tr>
<th colspan='2'>Database Config</th>
</tr>
<tr>
<td align='center'>MySQL Driver</td>
<td><select name='driver' type='dropdown'>";
if(function_exists('mysql_connect')) { print "<option value='mysql'>MySQL Standard</option>"; }
if(function_exists('mysqli_connect')) { print "<option value='mysql'>MySQLi Enhanced</option>"; }
print "</select></td>
</tr>
<tr>
<td align='center'>Hostname
[size="1"]This is usually localhost[/size]</td>
<td><input type='text' name='hostname' value='localhost' /></td>
</tr>
<tr>
<td align='center'>Username
[size="1"]The user must be able to use the database[/size]</td>
<td><input type='text' name='username' value='root' /></td>
</tr>
<tr>
<td align='center'>Password</td>
<td><input type='text' name='password' value='' /></td>
</tr>
<tr>
<td align='center'>Database Name
[size="1"]The database should not have any other software using it.[/size]</td>
<td><input type='text' name='database' value='mcc' /></td>
</tr>
<tr>
<th colspan='2'><h2>Game Configuration </h2></th>
</tr>
<tr>
<td align='center'>Game Currency
[size="1"]Re-name your Game Currency IE Crystals, Gems, Points or make up your own[/size]</td>
<td><input type='text' name='game_currency' value='Crystals' /></td>
</tr>
<tr>
<td align='center'>Game Currency Symbol
[size="1"]Do you want to show as $ or ? or other[/size]</td>
<td><input type='text' name='game_value' value='$' /></td>
</tr>
<tr>
<td align='center'>Change ENERGY
[size="1"]Change ENERGY bar name to...[/size]</td>
<td><input type='text' name='game_energy' value='Energy' /></td>
</tr>
<tr>
<td align='center'>Change WILL
[size="1"]Change WILL bar name to...[/size]</td>
<td><input type='text' name='game_will' value='Will' /></td>
</tr>
<tr>
<td align='center'>Change BRAVE
[size="1"]Change BRAVE bar name to...[/size]</td>
<td><input type='text' name='game_brave' value='Brave' /></td>
</tr>
<tr>
<td align='center'>Change EXP
[size="1"]Change EXP bar name to...[/size]</td>
<td><input type='text' name='game_exp' value='EXP' /></td>
</tr>
<tr>
<td align='center'>Change HEALTH
[size="1"]Change HEALTH bar name to...[/size]</td>
<td><input type='text' name='game_health' value='Health' /></td>
</tr>
<tr>
<td colspan='2' align='center'><input type='submit' value='Install' /></td>
</tr>
</table></form></center>";
}
function install()
{
menuprint("sql");
{
print "Config Bypass Started
";
print "Config Bypass Successful
Attempting DB connection
";
define('MONO_ON', 1);
require "class/class_db_{$_POST['driver']}.php";
$db=new database;
$db->configure($_POST['hostname'],
$_POST['username'],
$_POST['password'],
$_POST['database'],
0);
$db->connect();
$c=$db->connection_id;
print "Connection Successful.
Writing Main MySQL data.
";
{
if(!(strpos($line,"--") === 0) && trim($line) != "") //check for commented lines or blankies
{
$query.=$line;
if(!(strpos($line,";") === FALSE))
{
$db->query($query);
$query="";
}
}
}
print "Settings data was written.
Now write Extra MySQL data.
";
$username=$_POST['a_username'];
$IP = ($_SERVER['HTTP_X_FORWARDED_FOR'])
? $_SERVER['HTTP_X_FORWARDED_FOR']
: $_SERVER['REMOTE_ADDR'];
$db->query("INSERT INTO settings VALUES(NULL, 'game_currency', '{$_POST['game_currency']}')");
$db->query("INSERT INTO settings VALUES(NULL, 'game_value', '{$_POST['game_value']}')");
$db->query("INSERT INTO settings VALUES(NULL, 'game_energy', '{$_POST['game_energy']}')");
$db->query("INSERT INTO settings VALUES(NULL, 'game_will', '{$_POST['game_will']}')");
$db->query("INSERT INTO settings VALUES(NULL, 'game_brave', '{$_POST['game_brave']}')");
$db->query("INSERT INTO settings VALUES(NULL, 'game_exp', '{$_POST['game_exp']}')");
$db->query("INSERT INTO settings VALUES(NULL, 'game_health', '{$_POST['game_health']}')");
$path=$_SERVER['HTTP_HOST'];
print "
<h2>[b]Settings Installation Successful![/b]</h2><hr />
>center><h1>!ATTENTION<h1></center>
Once this Installer has been used you will be able to Edit Your Options via BASIC SETTINGS Panel in the Game";
}
}
?>
</td>
<td class="rgrad"></td>
</tr>
<tr>
<td colspan="3">
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<td class="dgradl"> </td>
<td class="dgrad"> </td>
<td class="dgradr"> </td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
RENAME THIS FILE ONCE YOU HAVE RUN IT AND SEE THE SUCCESSFUL MESSAGE