PHP Code:
Column count doesnt match value count at row 1
Registrierung fehlgeschlagen: Der Account existiert bereits
Das heißt ja eigentlich, dass die HP Spalten in die account Tabelle einfügen will, die nicht vorhanden sind oder? Aber ich denke ich habe alle benötigten Tabellen.
Hier ist meine register.php:
PHP Code:
<h2>Registration</h2>
<?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'] && !checkInt($_SESSION['user_admin']) && !$_SESSION['user_admin']>=0) {
if(isset($_GET['ref'])){
if (isset($_SESSION['geworben'])){
unset($_SESSION['geworben']);
}
if (checkAccount(mysql_real_escape_string($_GET['ref'])) == true){
echo '<p>Du wurdest von deinem Freund geworben registriere dir nun deinen Account und erreichne das Level '.$freunde['level'].' um
'.$freunde['coins'].' Coins zu erhalten.</p>';
$_SESSION['geworben'] = $_GET['ref'];
}
}
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['captcha']==$_SESSION['captcha_id'] && $_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)) {
if (isset($_SESSION['geworben'])){
InsertFreundeTable(mysql_real_escape_string($_SESSION['geworben']),mysql_real_escape_string($_POST['account']));
}
$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,status,coins)
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) {
$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 mysql_error();
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"/> 8-16 Zeichen (nur a-Z,0-9)</td>
</tr>
<tr>
<th class="topLine">Name:</th>
<td class="thell"><input type="text" name="uname" maxlength="16" size="16"/> 3-20 Zeichen (nur a-Z,0-9)</td>
</tr>
<tr>
<th class="topLine">Password:</th>
<td class="tdunkel"><input type="password" name="pass" maxlength="16" size="16"/> 8-16 Zeichen (nur a-Z,0-9)</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"/> max. 40 Zeichen</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">Löschcode:</th>
<td class="tdunkel"><input type="text" name="loeschcode" maxlength="7" size="7"/> 7 Zeichen (nur a-Z,0-9)</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"/> 3-16 Zeichen (nur a-Z,0-9)
</td>
</tr>
<tr>
<th class="topLine">Captcha:</th>
<td class="tdunkel"><img src="./captcha/captcha.php" title="Captcha"/> <input type="text" name="captcha" maxlength="5" size="5"/></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>';
}
?>
wobei mir auch gerade auffällt, dass ich nur diese überprüft habe:
PHP Code:
$sqlCmd = "INSERT INTO account.account
(login,password,real_name,email,social_id,status,coins)
Würde mich über Hilfe freuen