ich arbeite wie schonmal in einem Thread erwähnt
an einem CMS, und habe die install.sh, wie sie für die
bisherigen(!) Funktionen aussehen sollte, fertig
geschrieben. Leider krieg ich einen weißen Bildschirm, wenn
ich auf "Absenden" drücke(Step 1).
Hier der Sourcecode:
PHP Code:
<?PHP
##Schritt 1: Anlegen der CONFIGS
if (isset($_POST['submit']) AND $_POST['submit'] == "Absenden"){
if(!isset($_GET['step']) OR $_GET['step'] == 1){
##Verbindungstest
$dbServerConnect = @mysql_connect($_POST['dbhost'],$_POST['dbuser'],$_POST['dbpw']);
$dbServerSelect = @mysql_select_db($_POST['db'],$dbServerConnect);
$gameServerConnect = @mysql_connect($_POST['gamehost'],$_POST['gameuser'],$_POST['gamepw']);
$gameServerSelect = @mysql_connect_db("account",$gameServerConnect);
if (!$dbServerConnect OR !$dbServerSelect OR !$gameServerConnect OR !$gameServerSelect){
if (!$dbServerConnect){
echo "Konnte nicht zum Datenbank-Server verbinden!<br/>";
}else{
echo "Konnte zum Datenbank-Server verbinden!<br/>";
}
if (!$dbServerSelect){
echo "Konnte die Datenbank-Server Datenbank nicht finden!";
}else{
echo "Datenbank-Server Datenbank gefunden!";
}
if (!$gameServerConnect){
echo "Konnte nicht zum Game-Server verbinden!";
}else{
echo "Konnte zum GameServer verbinden!";
}
if (!$gameServerSelect){
echo "Konnte die Game-Server Datenbank nicht finden!";
}else{
echo "Konnte die Game-Server Datenbank finden!";
}
$success = FALSE;
echo '<a href="install.php?step=1">Zurück</a><br/>';
}else{
$success = TRUE;
}
if ($success == TRUE){
##Schreiben der Daten in die config.php
$cnfWrite = '##Datenbank Server
$dbhost = "'.$_POST['dbhost'].'";
$dbuser = "'.$_POST['dbuser'].'";
$dbpw = "'.$POST['dbpw'].'";
$db = "'.$_POST['db'].'";
$dbServer = mysql_connect($dbhost, $dbuser, $dbpw);
##Gamedatenbank Server
$gamehost = "'.$_POST['gamehost'].'";
$gameuser = "'.$_POST['gameuser'].'";
$gamepw = "'.$_POST['gamepw'].'";
$gameServer = mysql_connect($gamehost, $gameuser, $gamepw);
##Spezielle Konfigurationen
#Settings
$settings = array();
$settings[\'register\'] = '.$_POST['register_status'].';
$settings[\'debug\'] = '.$_POST['debug_status'].';
$settings[\'adminlevel\'] = "'.$_POST['adminlevel'].'";
$settings[\'servername\'] = "'.$POST['servername'].'";
$settings[\'maxmessages\'] = "'.$_POST['maxmessages'].'"';
$cnfFile = fopen('./include/config.php','w+');
$writeFile = fwrite($cnfFile,$cnfWrite);
if (!$writeFile){
echo "Fehler beim Erstellen der Config-Datei!<br/>";
echo '<a href="install.php?step=1">Zurück</a><br/>';
}else{
echo "Config-Datei erfolgreich erstellt!";
echo '<a href="install.php?step=2">Weiter</a><br/>';
}
}
}else if(isset($_GET['step']) AND $_GET['step'] == 2){
require_once ("./include/var.php");
require_once ($config);
$error = array();
$errortime = 1;
##.messages
$dbServerQueryMessages = "DROP TABLE IF EXISTS `messages`;
CREATE TABLE `messages` (
`id` int(11) NOT NULL auto_increment,
`from_char` varchar(255) character set latin1 default '',
`from_name` varchar(255) character set latin1 default '',
`to_name` varchar(255) character set latin1 default '',
`to_char` varchar(255) character set latin1 default '',
`title` varchar(255) character set latin1 default '',
`content` varchar(255) character set latin1 default '',
`show_to` tinyint(1) default NULL,
`show_from` tinyint(1) default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=19 DEFAULT CHARSET=ascii;";
$do = mysql_query($dbServerQueryMessages,$dbServer);
if(!$do){
$error[$errortime] = "Konnte die Message Tabelle nicht anlegen!<br/>";
$errortime = $errortime+1;
}
##.adminlog
$dbServerQueryAdminlog = "DROP TABLE IF EXISTS `adminlog`;
CREATE TABLE `adminlog` (
`adminName` varchar(16) character set latin1 default NULL,
`adminID` int(11) default NULL,
`time` datetime default NULL,
`IP` varchar(12) character set latin1 default NULL
) ENGINE=MyISAM DEFAULT CHARSET=ascii;";
$do = mysql_query($dbServerQueryAdminlog,$dbServer);
if (!$do){
$error[$errortime] = "Konnte die Adminlog Tabelle nicht anlegen!<br/>";
$errortime = $errortime+1;
}
##account.account
$gameServerQueryAccount = "ALTER TABLE account.account
ADD `coins` int(11) NOT NULL DEFAULT '0';";
$do = mysql_query($gameServerQueryAccount,$gameserver);
if (!$do){
$error[$errortime] = "Konnte die Account Tabelle nicht aktualisieren!<br/>";
$errortime = $errortime+1;
}
##Error Nachrichten
if ($errortime != 0){
while($errortime != 0){
echo $error[$errortime];
$errortime = $errortime-1;
echo '<a href="install.php?step=2">Zurück</a><br/>';
}
}else{
echo "Alle Tabellen wurden erfolgreich angelegt und aktualisiert!<br/>";
echo '<a href="install.php?step=4>Weiter</a><br/>';
}
}else if(isset($_GET['step']) AND $_GET['step'] == 3){
require_once ("./include/var.php");
require_once ($config);
##Admin
$query = "SELECT id,login FROM account.account WHERE login = '".$_POST['admin']."' LIMIT 1";
$result = mysql_query($query,$gameServer);
$num_rows = mysql_num_rows($result);
if($num_rows != 0){
$query = "INSERT INTO
common.gmlist
(mAccount,mName,mContactIP,mServerIP,mAuthority)
VALUES
('".$_POST['admin']."','".$_POST['admin']."','%','ALL','".$settings['adminlevel']."')";
$do = mysql_query($query,$gameServer);
if (!$do){
echo "Query ".$query." fehlgeschlagen!<br/>";
echo '<a href="install.php?step=3">Zurück</a><br/>';
$success2 = FALSE;
}else{
$success2 = TRUE;
}
}else{
$calcLZ = (60*60*24)*365;
$expireStamp = time()+$calcLZ;
$expireDate = date("Y-m-d H:i:s",$expireStamp);
$time = date("Y-m-d H:i:s");
$delcode = rand(0,9999999);
$coins = "999999999";
$query = "INSERT INTO account.account
(login,password,real_name,email,social_id,create_time,status,coins,autoloot_expire,safebox_expire)
VALUES
('".$_POST['admin']."',PASSWORD('".$_POST['admin_pw']."'),'".$settings['servername']."','".$settings['servername']."@trash-mail.com','".$delcode."','".$time."','OK','".$coins."','".$expireDate."','".$expireDate."')";
$do = mysql_query($query,$gameServer);
if(!$do){
echo "Query ".$query." fehlgeschlagen!<br/>";
echo '<a href="install.php?step=3">Zurück</a><br/>';
$success2 = FALSE;
}else{
$success2 = TRUE;
}
}
if($sucess2 == TRUE){
echo "Admin erfolgreich eingetragen!";
echo "Du wirst in 3 Sekunden weitergeleit...<br/>";
echo "<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'>";
echo "<meta http-equiv='refresh' content='3;URL=?id=admincp'>";
rename("install.php","install.dontexecutable");
}
}
}else{
if(isset($_GET['step']) AND $_GET['step'] == 1 OR !isset($_GET['step']) OR empty($_GET['step'])){
?>
<h2>Installation's Schritt 1</h2><br/>
<form action="install.php?step=1" method="post">
<b>Datenbank-Server:</b><br/>
<input type="text" name="dbhost" /><br/>
<b>Datenbank-Benutzer:</b><br/>
<input type="text" name="dbuser" /><br/>
<b>Datenbank-Passwort:</b><br/>
<input type="text" name="dbpw" /><br/>
<b>Datenbank:</b><br/>
<input type="text" name="db" /><br/>
<br/>
<b>Game-Server</b><br/>
<input type="text" name="gamehost" /><br/>
<b>Game-Server Benutzer</b><br/>
<input type="text" name="gameuser" /><br/>
<b>Game-Server Passwort</b><br/>
<input type="text" name="gamepw" /><br/>
<br/>
<b>Registrierung aktiviert:</b><br/>
<select name="register_status">
<option selected="selected" value="true">ja</option>
<option value="false">nein</option>
</select>
<br/>
<b>Debug-Mode aktiviert:</b><br/>
<select name="debug_status">
<option selected="selected" value="true">ja</option>
<option value="false">nein</option>
</select>
<br/>
<b>Adminrechte:</b><br/>
<select name="adminlevel">
<option selected="selected" value="IMPLEMENTOR">IMPLEMENTOR</option>
<option value="HIGH_WIZARD">HIGH_WIZARD</option>
<option value="GOD">GOD</option>
<option value="LOW_WIZARD">LOW_WIZARD</option>
</select>
<b>Servername:</b><br/>
<input type="text" name="servername" /><br/>
<b>Maximale Anzahl an Privaten Nachrichten:</b><br/>
<input type="text" maxlength="4" /><br/>
<input type="submit" name="submit" value="Absenden" /><br/>
</form>
<?PHP
}else if(isset($_GET['step']) AND $_GET['step'] == 2){
echo '<form action="install.php?step=2" method="post">';
echo "Jetzt werden die Datenbanken angelegt.<br/>";
echo "Dublicate Fehler, falls diese auftauchen, sind nicht schlimm.<br/>";
echo '<input type="submit" name="submit" value="Absenden" /><br/>';
echo "</form>";
}else if(isset($_GET['step']) AND $_GET['step'] == 3){
echo '<form action="install.php?step=3" method="post">';
echo "<b>Bitte Administrator angeben:</b><br/>";
echo '<input type="text" name="admin" /><br/>';
echo "<b>Bitte Administrator-Passwort angeben:</b><br/>";
echo '<input type="text" name="admin_pw" /><br/>';
echo '<input type="submit" name="submit" value="Absenden" /><br/>';
echo "</form>";
}
}?>
Daroo