Ich weiß, da fehlt eine Spalte, nur ich bin zu Blöd um dies aus der Register auszulesen.
Player DB:
/*
Navicat MySQL Data Transfer
Source Server : Metin2
Source Server Version : 50636
Source Host : ----******----
Source Database : player
Target Server Type : MYSQL
Target Server Version : 50636
File Encoding : 65001
Date: 2017-07-08 05:51:07
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `player`
-- ----------------------------
DROP TABLE IF EXISTS `player`;
CREATE TABLE `player` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`account_id` int(11) NOT NULL DEFAULT '0',
`name` varchar(24) NOT NULL DEFAULT 'NONAME',
`job` tinyint(2) unsigned NOT NULL DEFAULT '0',
`voice` tinyint(1) unsigned NOT NULL DEFAULT '0',
`dir` tinyint(2) NOT NULL DEFAULT '0',
`x` int(11) NOT NULL DEFAULT '0',
`y` int(11) NOT NULL DEFAULT '0',
`z` int(11) NOT NULL DEFAULT '0',
`map_index` int(11) NOT NULL DEFAULT '0',
`exit_x` int(11) NOT NULL DEFAULT '0',
`exit_y` int(11) NOT NULL DEFAULT '0',
`exit_map_index` int(11) NOT NULL DEFAULT '0',
`hp` smallint(4) NOT NULL DEFAULT '0',
`mp` smallint(4) NOT NULL DEFAULT '0',
`stamina` smallint(6) NOT NULL DEFAULT '0',
`random_hp` smallint(5) unsigned NOT NULL DEFAULT '0',
`random_sp` smallint(5) unsigned NOT NULL DEFAULT '0',
`playtime` int(11) NOT NULL DEFAULT '0',
`level` tinyint(2) unsigned NOT NULL DEFAULT '1',
`level_step` tinyint(1) NOT NULL DEFAULT '0',
`st` smallint(3) NOT NULL DEFAULT '0',
`ht` smallint(3) NOT NULL DEFAULT '0',
`dx` smallint(3) NOT NULL DEFAULT '0',
`iq` smallint(3) NOT NULL DEFAULT '0',
`exp` int(11) NOT NULL DEFAULT '0',
`gold` int(11) NOT NULL DEFAULT '0',
`stat_point` smallint(3) NOT NULL DEFAULT '0',
`skill_point` smallint(3) NOT NULL DEFAULT '0',
`quickslot` tinyblob,
`ip` varchar(15) DEFAULT '0.0.0.0',
`part_main` int(11) NOT NULL DEFAULT '0',
`part_base` tinyint(4) NOT NULL DEFAULT '0',
`part_hair` smallint(4) NOT NULL DEFAULT '0',
`skill_group` tinyint(4) NOT NULL DEFAULT '0',
`skill_level` blob,
`alignment` int(11) NOT NULL DEFAULT '0',
`last_play` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`change_name` tinyint(1) NOT NULL DEFAULT '0',
`mobile` varchar(24) DEFAULT NULL,
`sub_skill_point` smallint(3) NOT NULL DEFAULT '0',
`stat_reset_count` tinyint(4) NOT NULL DEFAULT '0',
`horse_hp` smallint(4) NOT NULL DEFAULT '0',
`horse_stamina` smallint(4) NOT NULL DEFAULT '0',
`horse_level` tinyint(2) unsigned NOT NULL DEFAULT '0',
`horse_hp_droptime` int(10) unsigned NOT NULL DEFAULT '0',
`horse_riding` tinyint(1) NOT NULL DEFAULT '0',
`horse_skill_point` smallint(3) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `account_id_idx` (`account_id`),
KEY `name_idx` (`name`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;
Register:
<div class="con-ui con-top"><h2>Account erstellen</h2></div>
<div class="con-ui con-post"><div class="con-wrapper">
<?PHP
$regCoins = 0; // Startcoins
$laufZeit = 365; //Tage autoloot,safebox
$calcLZ = (60*60*24)*365;
$expireStamp = time()+$calcLZ;
$expireDate = date("Y-m-d H:i:s",$expireStamp);
if($serverSettings['register_on'] && (!isset($_SESSION['user_admin']) && !checkInt($_SESSION['user_admin']) && !$_SESSION['user_admin']>=0)) {
if(isset($_POST['submit']) && $_POST['submit']=="registrieren") {
if((checkAnum($_POST['account']) && strlen($_POST['account'])>=8 && strlen($_POST['account'])<=16) && checkAnum($_POST['pass']) && strlen($_POST['pass'])>=8 && strlen($_POST['pass2'])<=16 && !empty($_POST['pass2']) && (checkName($_POST['uname']) && strlen($_POST['uname'])>=3 && strlen($_POST['uname'])<=20) && $_POST['pass']==$_POST['pass2'] && checkMail($_POST['email']) && strlen($_POST['email'])<=40 && $_POST['email']==$_POST['email2'] && (checkAnum($_POST['sicherheitsa']) && strlen($_POST['sicherheitsa'])>=3 && strlen($_POST['sicherheitsa'])<=16) && checkInt($_POST['sicherheitsf']) && (checkAnum($_POST['loeschcode']) && strlen($_POST['loeschcode'])==7)) {
$hashSF = md5($_POST['sicherheitsa']);
$sfNum = mysql_real_escape_string($_POST['sicherheitsf']);
$lcode = mysql_real_escape_string($_POST['loeschcode']);
$zuFall = rand(99999,999999999);
$userpass=mysql_real_escape_string($_POST['pass']);
$aktivHash = ($serverSettings['mail_activation']) ? md5($zuFall):'';
$accountStatus = ($serverSettings['mail_activation']) ? 'BLOCK':'OK';
$sqlCmd = "INSERT INTO account.account
(login,password,real_name,email,social_id,question1,answer1,create_time,status,coins,autoloot_expire,safebox_expire,web_aktiviert)
VALUES
('".$_POST['account']."',PASSWORD('".$userpass."'),'".mysql_real_escape_string($_POST['uname'])."','".mysql_real_escape_string($_POST['email'])."','".$lcode."','".$sfNum."','".$hashSF."','".$sqlZeit."','".$accountStatus."','".$regCoins."','".$expireDate."','".$expireDate."','".$aktivHash."')";
$sqlQry = mysql_query($sqlCmd,$sqlServ);
if($sqlQry) {
if(isset($_POST['friend']) && !empty($_POST['friend'])) {
$checkfriend = mysql_query("SELECT * FROM homepage.friends LEFT JOIN account.account ON (friends.account = account.id) WHERE account.email='".mysql_real_escape_string($_POST['friend'])."' AND friends.friend='".mysql_real_escape_string($_POST['email'])."'");
if(mysql_num_rows($checkfriend)==1) {
echo '<p class="success">Das Freunde-Einladen System hat einen passenden Eintrag mit dieser E-Mail/Account-ID Kombination gefunden. Du hast nun 30 Tage Zeit um Level 100 zu erreichen, dann bekommt dein Freund 150 Coins gutgeschrieben.</p>';
mysql_query("UPDATE ".SQL_HP_DB.".friends SET status='1',date_registered=NOW() WHERE friend='".mysql_real_escape_string($_POST['email'])."'");
} else {
echo '<p class="warning">Das Freunde-Einladen System hat keinen Eintrag mit dieser E-Mail/Account-ID Kombination gefunden. Dein Account wurde trotzdem ohne Probleme erstellt.</p>';
}
}
$absender = $serverSettings['titel']." Registration";
$email = $serverSettings['reg_mail'];
$empfaenger = $_POST['email'];
$mail_body = "Hallo ".$_POST['uname'].",
deine Registration auf ".$serverSettings['titel']." war erfolgreich! Um auch auf dem Server spielen zu können, musst du deinen Account aktivieren.
Das kannst du über den folgenden Link tun:
".$serverSettings['url']."/index.php?s=login&do=aktivieren&hash=".$aktivHash."
Deine Daten sind:
Account: ".$_POST['account']."
Passwort: ".$userpass."
Löschcode: ".$lcode."
Sicherheitsfrage: ".$sFrage[$sfNum]."
Antwort: ".$_POST['sicherheitsa']."
Viel Spaß beim Spielen,
Dein ".$serverSettings['titel']."-Team
Diese E-Mail wurde automatisch generiert. Bitte keine Antworten an diese Adresse schicken.";
$titel = "Registrierung auf ".$serverSettings['titel'];
$header = "X-Priority: 3\n";
$header .= "X-Mailer: ".$serverSettings['titel']." Homepage Mailer\n";
$header .= "MIME-Version: 1.0\n";
$header .= "From: ".$absender." <".$serverSettings['reg_mail'].">\n";
$header .= "Reply-To: ".$serverSettings['reg_mail']."\n";
$header .= "Content-Type: text/plain; charset=iso-8859-1\n";
if($serverSettings['mail_activation']) {
mail($empfaenger, $titel, $mail_body, $header);
echo'<p class="meldung">Account erfolgreich angelegt. Bitte überprüfen Sie Ihr Postfach, um die Registrierung zu bestätigen.</p>';
}
else {
echo'<p class="meldung">Account erfolgreich angelegt. Sie können sich nun anmelden.</p>';
}
}
else {
echo'<p class="meldung">Registrierung fehlgeschlagen: Der Account existiert bereits.</p>';
}
}
else {
echo'<p class="meldung">Registrierung fehlgeschlagen: bitte alle Felder richtig angeben</p>';
}
}
?>
<p>Alle Felder sind Pflichtfelder und müssen ausgefüllt werden.<?PHP if($serverSettings['mail_activation']) { echo'<br/><b>Der Account wird per E-Mail aktiviert, also eine richtige E-Mail eingeben!</b>'; } ?></p>
<form action="index.php?s=register" method="POST">
<table>
<tr>
<th class="topLine">Account:</th>
<td class="tdunkel"><input type="text" name="account" maxlength="16" size="16"/></td>
</tr>
<tr>
<th class="topLine">Name:</th>
<td class="thell"><input type="text" name="uname" maxlength="16" size="16"/></td>
</tr>
<tr>
<th class="topLine">Password:</th>
<td class="tdunkel"><input type="password" name="pass" maxlength="16" size="16" AUTOCOMPLETE="off"/></td>
</tr>
<tr>
<th class="topLine">Password wiederholen:</th>
<td class="thell"><input type="password" name="pass2" maxlength="16" size="16"/></td>
</tr>
<tr>
<th class="topLine">E-Mail:</th>
<td class="tdunkel"><input type="text" name="email" maxlength="50" size="25"/></td>
</tr>
<tr>
<th class="topLine">E-Mail wiederholen:</th>
<td class="thell"><input type="text" name="email2" maxlength="50" size="25"/></td>
</tr>
<tr>
<th class="topLine">Geworben von (E-Mail) [OPTIONAL!!]:</th>
<td class="tdunkel"><input type="text" name="friend" maxlength="50" size="25"/></td>
</tr>
<tr>
<th class="topLine">Löschcode:</th>
<td class="tdunkel"><input type="text" name="loeschcode" maxlength="7" size="7"/></td>
</tr>
<tr>
<th class="topLine">Sicherheitsfrage:</th>
<td class="thell">
<select name="sicherheitsf">
<?PHP
foreach($sFrage AS $fragew => $frage) {
echo'<option value="'.$fragew.'">'.$frage.'</option>';
}
?>
</select>
<input type="text" name="sicherheitsa" maxlength="16" size="16"/>
</td>
</tr>
<tr>
<th class="topLine" style="text-align:center;" colspan="2"><input type="submit" name="submit" value="registrieren"/> • <input type="reset" value="zurücksetzen"/></th>
</tr>
</table>
</form>
<?PHP
}
else {
echo'<p class="meldung">Die Registration ist deaktiviert oder Sie sind bereits angemeldet. Es kann kein weiterer Account erstellt werden.</p>';
}
?>
</div></div>
<div class="con-ui con-bt"><span></span></div>